How could I have prevented this long drawn out game? Consider the following game. I am black.
[FEN &quot;&quot;]
1. e4 g6 2. d4 d5 3. e5 e6 4. Nf3 b6 5. Nc3 Bb7 6. Bg5 Be7 7. h4 Nc6 8. Bd3 Qd7 9. Qd2 O-O-O 10. Nb5 f6 11. exf6 Bxf6 12. a4 h6 13. Bxf6 Nxf6 14. Bxg6 a6 15. Nc3 h5 16. Qg5 Rdf8 17. Ne5 Nxe5 18. Qxe5 Ng4 19. Qg5 Rxf2 20. Bxh5 Rxg2 21. Bxg4 Rxc2 22. Qe5 Rg8 23. Bxe6 Re8 24. Bxd7+ Kxd7 25. Qxe8+ Kxe8 26. Nxd5 Bxd5 27. b4 Bxh1 28. h5 Rh2 29. Rd1 Rxh5 30. Kd2 Bc6 31. a5 bxa5 32. Re1+ Kd7 33. bxa5 Rxa5 34. Rg1 Be4 35. Rg7+ Kd6 36. Kc3 Rb5 37. Rg4 Bd5 38. Rg6+ Be6 39. Kd3 Kd5 40. Rg5+ Kd6 41. Rg6 c6 42. Ke4 a5 43. Rh6 a4 44. Rh8 Rb4 45. Rd8+ Kc7 46. Re8 Bd5+ 47. Ke5 Kb6 48. Rb8+ Ka5 49. Ra8+ Kb5 50. Rb8+ Kc4 51. Rh8 Bg2 52. Rh2 Rb2 53. Rh4 Re2+ 54. Kd6 Re4 55. Rh2 Rxd4+ 56. Kc7 Rd2 57. Rh4+ Kb3 58. Rh8 a3 59. Rb8+ Kc2 60. Ra8 Kb2 61. Rb8+ Kc1 62. Rb4 a2 63. Ra4 Kb1 0-1

I would say that both of us are at about the same skill level. The game started out okay. White was being more aggressive and I ended up more defensive than I would have liked during the opening (let's say the tenth move). By move 27, white has a slight advantage but he makes a blunder and loses one of his rooks. Assuming neither of us wants a draw, here are my questions,

I have only a rook and a bishop. Just to make sure, it is difficult to force a mate with a rook and a bishop, right? Against a rook? Is my only option promoting to a queen and then mating him?
By move 37, my intuition was that the (sole) white pawn on d4 would become problematic. Forcing a mate with only one rook is impossible so white has no choice BUT to promote to a queen. Therefore, I have to take that pawn and then work on getting my pawn promoted. Was this a reasonable strategy or was I being too cautious? Is there a better decision I could have made at this point?
I was also unwilling to sacrifice one of my pawns because I didn't want to put all of my eggs in one basket. Was this reasonable or overly cautious?

I eventually took his pawn. The best case scenario is a draw for him now. By move 63, the forced mate is obvious to him and he finally resigns. My main question is,
Was there any way to force a win and end the game quickly after move 30? Any path to a quick decisive victory?
The game became very long and drawn out, probably because I was not being bold enough. This was correspondence chess so the game lasted like two months longer than it had to. My intuition is that I could have ended it sooner but I still can't actually see how. Is my intuition correct? Any comments in general to improve my game are also welcome.
Very simple. Learn endgames.
If you knew much about endgames then you would know that in rook and pawn endgames your rook belongs behind your passed pawn. Knowing that on move 39 you wouldn't have played the pointless Kd5. Instead you would have played 39...a5 with the intention of following this with 40...a4 41...Ra5 and then just keep pushing the a pawn.
Note that your opponent's best plan was also to put his rook behind your passed pawn. That would make it impossible for you to put your rook behind the pawn and make it very difficult to push. Fortunately your opponent was equally ignorant of endgame theory.
Time spent learning endgames will gain you more points than anything else you could spend the same amount of time on.