У тебя в onmessage, callback будет вызываться в контексте объекта на котором onmessage триггерит. А setTimeout глобально естественно.
Но этот глобальный контекст, локален самому воркеру.
Для node есть конечно, гугл выдаёт кучу результатов (не заставляй других гуглить):
https://github.com/pgriess/node-webworker