I think 42... Ra3 is the correct move, because after h6 the f3 pawn is hanging, and I don't want to own the h-pawn, if I can take a better one, and then you can attack the b4 with Rb3.
So, 42... Ra3 if the King defends the pawn I give a check on a2, Rf1 is passive, so I can change. After that I don't see any moves for white to win.
Another good idea is 47... c5. 48. bxc5 Rxe4 49. fxe4 Kxc5 and black wins
48. Rxf4 Rxb4 49. Rf7 and your position is better, maybe winner.
I am not posting game I have intented earlier, but again another game, where I have failed in the endgame and I would be courious, what can have been done better. It is some kind of Sicilian, but my suggestion is to look from Move 34, when we exchanged queens.
At that time it seemed to me that I stay worse due to strange pawn structure and less active figures. Somehow through I believe good exchanges I went to better position around move 47 and I hoped to get one of b-c pawns promoted. I did but opponent sacrificed his rook and I was not than able to stop his 3 pawns against one and rook on the other side of board.