The interoperation between operating systems shouldn't really matter. Since SFML relies on the POSIX network API, there isn't even a platform specific implementation for most of the network related features. If I had to pick one, I would say that Linux has a better network stack than Windows, so the operating system really isn't the problem
.
And... please... for future reference don't refer specifically to Ubuntu. It is just one of many distributions, and they all share the same networking code because it is part of the Linux kernel. It would be more correct to refer to Linux in general, like you already do for Windows (i.e. you don't say Windows 8 Enterprise or Windows 7 Ultimate), and wouldn't discount all the other great distributions.
As with the previous problem, it would be nice to have more information to work with. We have to figure out if this is something specific to the OS (very unlikely), SFML, your code, or even the underlying network. The best would be to provide packet dumps (e.g. with Wireshark) of both server and client in an isolated environment, and under controlled conditions (i.e. you can annotate a dump with the exact timestamps of events that occur in the client) so we can map the traffic to actions in the game.
I have used SFML networking in multiple scenarios before, and even ran many tests, both on Windows and Linux to determine the limits of SFML networking (not very scalable, but usable in casual contexts). I have never encountered something like this, even in high load situations.