According to benchmarks, transferring binary data is way faster than JavaScript objects.
Maybe we can use a mechanism like protocol buffer to serialise the data to binary, transmit them to another thread and then deserialise them to objects.
There is an unofficial JavaScript port of protocol buffer: https://github.com/dcodeIO/ProtoBuf.js/
It may be overkilling for short messages, but if messages are ususally big, then it can make a change.