Well, the reason for the loss is pretty obvious, but I can suggest a couple of things.
Move 7, you don't really care yet if he plays Nb5, because you can play a6 when he does, and he'll just have to retreat, wasting a move for him. So, I would have waited on that move.
Move 18, you propose R5e8, which is better than what you played... but why not Rae8, putting BOTH rooks on the open file?
This is a game I played a short while ago, any comments, suggestions on better play are much appreciated. Thanks.