Your server use packet while your client use the lower level implementation which is directly using a buffer with a size.
How the packet class work in SFML, it first send a size then the actual data.
So since you aren't using packet on the client there is somewhat a mismatch between what the client send and what the server except to receive, either use packet on both side or the lower level sockets on both side.
Note that what I said may not be totally correct, I didn't look at the source to be sure of that. Laurent might be able to answer more accurately.