Ah then you are at the point where I gave up after 2 days of fiddling around. On LAN it's perfect, because latency basically does not exist, but when simulating an online conenction... forget it.

Easiest solution would be if the client syncs his player with the server and not vice versa. But it allows cheating and would require some sort of validation on the server.

Syncing however would become a LOT easier, because on each machine the lag is the same for each value and I don't have to sync with some value which is 300ms or so old.
I tried to do that and simply failed.