Uma coisa que aprendi, ao usar sockets, é que é bastante difícil usá-los corretamente sem entender como é que funcionam.
Eu havia esquecido de mencionar que é necessário, quando se usa esse tipo de “não-protocolo” com sockets (ou seja, usá-lo como se fosse imprimir os dados no console), que é necessário desabilitar uma otimização do socket TCP/IP (“Nagle Algorithm”). Ou seja, é necessário usar: