I'm pretty sure that there are 3 reasons for the problems you are seeing:
1. Playing with others from another area (e.g. USA-Germany), it looks like this is happening al lot more because of a shortage of players.
2. Shitty routers(there are a lot of these!!!), bad connections and connections that are used for other things (streaming/downloading etc.)
3. Cheaters.
If you want to try something, try the port forwarding explained in the help section.