Dear Iheartaustin,
im sorry you go through such a hard time with your puppy.
I had a puppy last year that i had a hard time 'training'.. well, i'm a cat person, and cats are much more easy to deal with. but that's a different story.
I have a LOT of anger management issues myself, and i was losing it when my puppy wouldnt listen. BUT i do have some tips!
1. research training tips and videos. There are many free resources online, and even on youtube. I used the method recommended by a guy on youtube [but can't remember his name] and it was working. !!! WARNING though: the results make you believe this happens in half a day, but NO! it takes longer than that.
2. you must always keep calm BEFORE going to see your puppy. if you feel like you're losing it, WALK AWAY ASAP!!
3. you need to be persistent in your training: ALWAYS use the same method!! otherwise both you and the dog get confused. if for instance, when you train your dog and he responds the way he's supposed to, reward him! [1 dry kibble thingie at a time works fine]. if the dog does something he's not supposed to, IGNORE him. You reward your dog after he pees/poos outside, but ignore him when he pees indoors or goes in places he's not supposed to. II sure know it is harder to do. been there.
4. dogs don't understand language, but 'energy' signature and attitude. my dog was acting worse around me when i was nervous/anxious/stressed/whatever. she was calm when i was calm and when i was ignoring her.
5. crate training is nightmarish. i was lucky my dog didn't cry [my neighbors have noisier dogs than what mine was]. HOWEVER it can be done.. im not sure you still need to do it at this point, but it can be helpful in the future. Make sure you crate him in the day time, when there are least neighbors at home. he cries? you ignore him!!!!! he calms down by himself? you go reward him - petting or treat.
6. hitting/spanking his butt area when he does something bad = NONONONO! because he will translate the touch as petting. petting = love, love= "i did something good" in his mind, therefore counter productive
7. the easiest thing to teach a dog is 'to sit' and you don't really need to say it, but you should. hopefully you have some dog food with a strong scent your puppy likes. have a piece in your hand, and let him sniff it. he will try to grab it [accidentally biting your fingers, so watch out], but make sure he doesn't. [if he does, just take another piece and try again]. Your dog will try and reach it at first, but in the end will sit: as soon as he sits, you let him have it. don't use the command 'sit' from the start, but after a week or so, when he doesn't try so hard to take the treat from your hand.
I managed to see results in a about a month maybe? my dog was the dominant one, so she was trying to dominate me. I was getting angry because i couldn't make her listen to me. we weren't a match in personality, so now she has a much better home. [in case you were wondering why i use the past tense]
take your puppy to the vet to make sure he's fine. pets are really like kids, and they're more difficult to manage. i hope my post helps a little. try to forgive yourself for what you did, even though it's horrible. we all make mistakes.