Instead of 23. Ne5, Rxa7 keeps you a pawn up. Also, after Nxc3, did you now see nxa2?
33. ...f6 instead of Kg8
48. I would suggest trying to get your king to c2 and keep your opponent's king as far away as possible. Possible continuation:
47. Kf2 Kf6 48. Ke2 Ke6 49. Kd2 Kd6 50. Kc2 Kc6 Now you play 51. Rb3, and Black has to surrender the pawn.
a) 51. ...Rh8 52. Rxb2! Make sure you take with the rook, as it will provide cover for your king. 52. ...Rh2+ 53. Kb1 Rh1+ 54. Ka2 ends the perpetual checks.
b) 51. Ra8 52. Kxb2 Ra5 53. Rc2+ Rc5 1/2-1/2