Socket.io can't handle many connections you're right.
I would use (universal) Web Sockets (This is a good abstraction library, very easy to implement).
https://github.com/primus/primus
Maybe put it on a Digitalocean Server and just reference your Dyno's IP address if possible.