Yeah so I use Python and FastCGI with Dreamhost, which runs as a separate process and separate user.
I think mod_php (Apache shared library) is the the thing where every PHP site runs as www-data, but I thought that FastCGI was preferred these days over mod_apache. FastCGI is a separate process, which can run as a separate user, communicating over sockets.
But the original post is about STATIC websites, so this won't come into play. The main point is that you shouldn't spin up a VPS to serve static sites! You'll be burdened with maintaining the OS and web server.
Shared hosting is basically as easy as Github pages, with more choice of provider (in keeping with the philosophy of the small web).
My bet would be that most larger shared hosts have implemented some type of solution for this, but perhaps some smaller ones haven't.