I didn't use a computer for the following - so beware
1.e4 c5 2.c3 Nf6 ( Ahh, the alapin! A nice anti-sicilian system. As white I preferred to see ...d6, as I'd angle for a french advanced. As black, I liked 2...d5, but don't remember the lines at all. )
3.e5 Nd5 4.Bc4 e6 (e6 doesnt feel right, but then neither does white's next move. e6 blocks the light squared bishop. I think Nb6 reasonable)
5.Qf3 Nc7 (Nc7 with the aim of what? b5? that would be nice if Qf3 wasnt looking at a hanging rook on a8. Perhaps black expecting a big struggle over b5 i.e. 6.d4 Nc6 7.a4 a6 8. Na3 )
6.d4 cxd4 7.cxd4 d5 8.Bb3 Bb4+ (White's critical choice here with 8.Bb3. I don't think it is correct. Obviously he has created a weak spot on d4. in exchange, he has gained tremendous kingside space and initiative. That bishop needs to coordinate with that idea. On b3 - its likely to come back to c2 or even d1 anyway, so Bb3 wastes a tempo. (also - a useful posting on a4 doesnt seem realistic) I don;t terribly mind black's response, Bb4+, but the goal has to be undermining d4. Instead, he causes white to just play the natural 9. Nc3 where black will not exchange it anytime soon.)
9.Nc3 Nc6 10.Ba4 Bd7?? (...b5! as the night is pinned how did black let Ba4 become a useful posting?
in fact after 10...b5, the pawn on d4 falls and white has to move 11. Bd1 to prevent losing his good bishop as well. interesting after 11...Nxd4 12. Qg4 though - probably ...Bxc3 13. bxc3 Nf5 -+)
11.Nge2 O-O 12.Bc2! g6 (black can't do this. his kingside is bare - about to get crushed and creating an empty fianchetto spot there is only going to make things worse)
13.O-O a6 (i'd be tempted by ... Qh4 - anything to bring more defenders over to the kingside)
14.Nd1 Nb5 15.Qg4 Nbxd4?? (expected Re8 followed by Bf8, or Qb6 followed by Be7 here)
16.Nxd4 Qb6?? ( If idea before was to exchange a Knight for the 2 central pawns, why not follow through on that? Black can play on after Nxe5)
17.Nxc6 Bxc6
18.Be3 Bc5 19.Rb1 d4! (interesting! pinning the white knight on the back rank, threatening discovery against king (if f4 to support e5), i really like this move - white will need to respond with Bd3 blocking that pawn in place )
20.Bh6 Rfd8 21.Qg5 Bf8 22.Bd3 Rd5 23.b3?? Qc7?? (b3 a terrible move. the B on d3 means f4 was perfectly safe (for now) - b3 doesnt need to support c4 or a4. (i.e. if f4, can follow with Nf2,Ne4,Nf6) Fortunately for white, again black has some aversion to capturing d5. Bxh6 24. Qxh6 Rxd5 followed by ...Rh5 ...Qc7 would have been uncomfortable for white with pressure on g2 and h2)
24.Re1 Qa5 25.Qd2?? Bb4 (I didnt see how bad Qd2 was at first)
26.Qe2 Bxe1 27.Nb2 Bc3! 28.Nc4 Qc5 (much prefer Qc7 as black can get back and cover kingside, also build up heavy pieces on the c-file, also as shown later - allows Bb4 if necessary to defend/attack a deadly white N on d6)
29.Bf4 b5 30.Nd6 g5 (as you stated - this was the true end)
31.Qh5 Be8 32.Qxh7+ Kf8 33.Bxg5 f6 34.Qh8+ Ke7 35.Qg7+ Kd8 36.Bxf6# 1-0
great game! i think move 25 was your only real blunder, but i believe you still had a won game. something like:
26. Qf4 and he cannot take your hanging rook on e1! he must respond with f5, Qd8, or Bf8. Then you play the move you meant to - Re2 or Re4
Its instructive, certainly.