Lo que intentas enviar YA es un nodo, el casting lo tenes que hacer al tipo de dato que necesita la funcion, es decir puntero a char y el tamaño es el del nodo que envies, no el de la lista:
send(RemoteSocket, (char*)&listas.at(con), sizeof(nodo));
PD. El bucle tiene que ser a < size().