I think people have pretty much given you good advice, other than the occasional bit of self-righteous abuse (*ahem*).
Like others say, it sounds like he's realized the errors of his ways and wants to amend things. I'd say give him the chance to do so.
On my own part (feel free to ignore any or all of this), I'd tell him;
A> Dude, don't ever argue the the GM in any game. The GM is the person who decides how much treasure there is, how tough the monsters are and all the other fun details. You can't win, you can only piss him off. This is not a good idea with me or with anyone else you're likely to game with.
B> The stats in the Monster Manual (and other places) are not cast in stone. If I want to give one stalk on a Beholder a couple of extra hit points, or give the standard Orc 14 hit points, or make Goblins magic resistant, that's my perogative. Besides, have you noticed this thing in the stat block called "Advancement"? How'd you like to meet a 33 hit die Beholder next time?
C> You not only argued with me and made me so angry that I couldn't continue the session, but you angered the other players as well. This should have been a strong clue that you were doing something wrong. Next time pay attention to the social clues.
D> Don't ever ask me to stop one combat or narrative event to play out another one. It breaks the flow and annoys the heck out of me and the people involved in the flow you want me to set aside.
E> Next time you do anything like this at all, you're out of the game. Period.
Beyond this, don't sweat it too much. Your GMing is not at issue here and you have no need to question anything about yourself. As a wise man above said, get back in the saddle and play your game.
Oh, and completely ignore the "teach me to GM" bit. He's sucking up and this is not somewhere you need to go. If he presses the matter, say "not right now" and let it go. If he persists, then tell him to learn by observing, but to stop bothering you about it.