i.e. locking the mutex for writes to that one socket
You could either write an encapsulated socket write locker type, or just treating the mutex with the corresponding together within the same unit.
As I wrote in one of your previous threads, I would consider using QMutexLocker for such cases. It is less error-prone, and it also makes the code shorter.