Great, long game I played
Instead of 18. Bxb7, why not take with the rook so your pieces don't get stranded.
20. Bg5, why not retreat the bishop from b7, otherwise your opponent. Your opponent gave you another opportunity at move 23. Instead of Rd1 you could retreat the bishop from b7.
Nicely done. Impressive comeback. Shows you not to give up too soon. At one point you were pretty far behind, but in the end your technique was better than his.
That said, there are improvements I saw that you could have made, but I think you are rightly proud of your victory.
19.Ra8#
How do you find 19.Ra8 to solve anything else than losing him a bishop? rather than rook?