I can't see why white didn't take your knight at 9... Nxe3 thus double attacking the knight in the middle. I guess he thinks better center control with 10. Nxe5 is better but he loses a pawn and ability to castle. And at move 23 if he takes the rook than you can't check him with the bishop because that pawn is in the way.
I told you he'd take the bishop. ;)
I am proud of this game. I've been learning the Caro Kahn Defense for the past month. It can be a patient defense which, like most defenses, can get you in a lot of trouble if you are not careful. But I like the endgame positions I can get. On move 24, White cannot take the a8 rook; my reply shows why.