What address(es) does your Node.js server bind to, when it is running?
ss -tlnp
Are you definitely stopping your Node.js server before you run Certbot in --standalone
?
You can also try pass --http-01-address 0.0.0.0
to Certbot to force the bind to occur for all IPv4 interfaces, or to whatever address your Node server binds to when it is working.