The problem with Teamviewer and other remote access software is they require a host PC and often human intervention between sessions.
A VPN on the other hand runs on the router and won't lock up.
You're right of course. But for folks that are not skilled in networking, the local host PC and Teamviewer route is fairly simple and easy to setup. But yeah, you do need an ally locally in case the local computer locks up or whatever.
Horses for courses. I've done both ways and both can work well depending on the specific case.