I have a feeling Nadal will hang around until he can no longer compete at the French Open. He has only lost 2 matches at Roland Garros, and didn't drop a set in 2017. Obviously, a time will come when he just doesn't have it (or, as you mentioned, injuries finally take their toll), but Nadal is only 31. I wouldn't be surprised if Rafa plays another 5-6 years, wins another 3-4 French Opens, and maybe snags another major or 2 to eclipse Roger's 19.
A lot of that probably depends on Shapovalov and Zverev. If they start dominating it will be tough for Rafa. It's very impressive he has hung on as long as he has given all his injuries. I wonder if there is any significance to his Uncle Toni stepping down from coaching him?