Some points where you lost material in a very simple way:
3...e5: this pawn is protected once and attacked twice
14...Bh4+: this bishop is unprotected, but attacked by the queen on a4
24...Bd8: leaves your rook on a8 unprotected while it is attacked
27...Qd8: leaves your knight on h5 unprotected while it is attacked
42...Rxe3+: this rook is attacked twice and protected only once
45...g5: he could have taken this pawn for free with 46.hxg6 en passant
Also 31...Qxa3 lost the knight to the double attack 32.Qd5+, but that's the next level of chess skill - just protecting your pieces to normal attacks comes first.
Since he makes a similar amount of mistakes like that, you were in the game for pretty long, but you could have trounced him.
Stop losing material in the simplest way possible (and continue to take his pieces for free when you get the chance), it's the first thing to learn in chess.
could someone please suggest some better moves at various points in this game?