You should send raw bytes using Serial.write and then import them using something like ImportByteArray[ByteArray[yourData], "UnsignedInteger16"] (if for ADC values). Then you bypass encoding/decoding stage, and can pack 1 byte of real data per Serial.write