Is there a rational way to serve multiple websites via PHP:Nginx, Python:??? & node.js on the same vps? 
And would it be reliable? 
The sites are expected to be low in traffic. 
I currently have PHP running on Nginx, Ubuntu via Digital Ocean and I would like to stick to Nginx for PHP and any major webserver for Python.
The kind of setup you're describing is straightforward and not complicated. Nginx works fine as a reverse proxy and web server that handles serving static assets.

For PHP, you just need to proxy to php-fpm (running on a TCP port or unix socket).
For Python, you need a wsgi server (something like uwsgi or gunicorn, again using a TCP port or unix socket) to server the Python app and have Ngix proxy to requests to it.
For your Node.js app, just run the node server on a port like 8000 and have Nginx proxy requests to it.

If you have a bunch of websites, each should have a server block matching a  unique server name (i.e. mapped to a virtual host).
The setup is as reliable as your backend services (like php-fpm, wsgi, and Node.js server). As long as those services are up and running (as daemon services) nginx should have no problem proxying to them. I have used all 3 setups on one server and have never experienced problems with any of the above.
Running node, PHP and Python on the same vps