Nice game, some comments.
a) I think 8.exd5 would have been much better for him. The resulting position provides black with a beautiful square on e4 and possibilities to attack your center with 0-0 and Re8
b) Him playing f6-d5 was too weakening I believe, and led to the attack down the diagonal.
c) Playing without the castle was risky, and could have backfired. For example there is a funky line given by the CPU: 10...Nxf4 11.exf4 Nxd4 12. Nxd4 Qxd4. Very hard to find but just to illustrate the point.
d) Nice of you to find the sacrifice. It was a very well executed attack despite his mistakes.
Lately I've been making the unexpected moves (and apparently the better moves) and got my rating up over a 100 points in the last several games. In this game I routinely avoided the expected trade offs that he kept offering and continuously shook the game up, culminating on move 15. Why he didn't capture the bishop on ...15 to make it a true a sac is beyond me. Or was there a reason not to capture the bishop, for instance he was afraid I'd force a draw with ...15xg6 16. Qxg6+ ???