I really liked the first moves of your opening, you perfectly took advantage of the little-ambitious moves that your opponent played by invading the center.
The first move I don't like is 7... dxe4, I don't understand why you allowed him to break your center like that. It's true that he was putting a lot of pressure on your d pawn but I think that d5 would have been a great choice here, because the potentially weak d5 square would have been very well protected by your pieces, so I don't think that was a big deal.
Then, at move 10 you missed a great opportunity to improve drastically you c6 knight : the computer says that the best continuation for you was Bxf3, and after he recaptures 11... Nd4 offered you the perfect place for your knight, attacking the bishop on f3 and the pawn on c2. You should always try to find the best possible squares for your pieces, and create plans to put them where you want. But I agree that it's much easier said than done :)
12... Bxe4 is of course a really bad mistake, you were probably not concentrated enough. It happens to everybody. You probably need to do the "blunder check" : each time you make a move, try to guess what is your opponent going to answer to your move, and check if there are any tactics you're missing (pins, checks on your king, in-between moves, discovered attacks, unprotected pieces...)
Finally, 18... f6 was also bad but your position was already lost, so I don't think it's such a big deal. But don't forget that moving a pawn ALWAYS creates a weakness, because the squares protected by this pawn are freed once he moves forward. Don't forget to look if your opponent can take advantage of that !
I hope that it helps, even if I'm not the best player :)
The first move I don't like is 7... dxe4, I don't understand why you allowed him to break your center like that. It's true that he was putting a lot of pressure on your d pawn but I think that d5 would have been a great choice here, because the potentially weak d5 square would have been very well protected by your pieces, so I don't think that was a big deal.
Then, at move 10 you missed a great opportunity to improve drastically you c6 knight : the computer says that the best continuation for you was Bxf3, and after he recaptures 11... Nd4 offered you the perfect place for your knight, attacking the bishop on f3 and the pawn on c2. You should always try to find the best possible squares for your pieces, and create plans to put them where you want. But I agree that it's much easier said than done :)
12... Bxe4 is of course a really bad mistake, you were probably not concentrated enough. It happens to everybody. You probably need to do the "blunder check" : each time you make a move, try to guess what is your opponent going to answer to your move, and check if there are any tactics you're missing (pins, checks on your king, in-between moves, discovered attacks, unprotected pieces...)
Finally, 18... f6 was also bad but your position was already lost, so I don't think it's such a big deal. But don't forget that moving a pawn ALWAYS creates a weakness, because the squares protected by this pawn are freed once he moves forward. Don't forget to look if your opponent can take advantage of that !
I hope that it helps, even if I'm not the best player :)