Right. Minecraft works with a game loop, what most people refer to as ticks. Everything in minecraft is based on 20 ticks per second. This means that the server handles all block placements, destroys, lava/water flows, redstone updates, plugin calls etc 20 times per second. This is standard for every minecraft server. If you experience 'lag', there could be 3 causes:
1. The server can't keep up; When this happens, the server has not enough time to execute 20 ticks per second. Somewhere in the server hardware is a bottleneck, this might be a slow cpu, slow reading/writing on a disk or a plugin doing hard math/computations. As this is purely server-sided, we've built a command to check if the server is performing optimal; /lag. Our server runs most of the time on 20 ticks. (it is fairly normal for it to be between 19-21 ticks.)
2. Server connection; The connection: client <=> server is too slow. You explain that blocks snap back, this is because the way minecraft works: you break a block. Your client renders the block as broken, and sends a packet to the server that you've broken the block. Because your connection is too slow, the client receives the confirmation from the server that the block really is broken, to compensate for that, the client puts the block back in, and immediately breaks it again as it received the delayed confirmation.
3. Underpowered pc; Again, this has to do with client side hardware. Your computer might be unable to handle the graphical or normal processing. This is the main reason you experience fps drops.
It makes sense to say that your main issue here is the connection you have to the server. We even confirmed that by having you ping our server and his.
This reason also backs up as what you describe as chuncks not loading, jerky block placement/breaking.
I don't have a solid reasoning behind the fact that you experience fps drops, though I think that it is caused by the fact that your internet connection is rather shitty, and thus most of your packets get malformed. Your pc probably needs more time to correct these malformed packets and thus decreasing your fps. (Don't quote me on this though)
The world limit; what you describe as 5k on our server and unlimited on his is a whole other story. We've limited our world border to reduce the size of our databases; every block placement is logged. Having a large world might cause the key values of the database to go out of range, crashing our database. We believe that there is enough space available for players to explore and build as they desire. If more builds start popping up, we can always increase the border.
In conclusion; our server runs at 20 ticks (you can check that using /lag). Your pc runs minecraft at 90+ fps. Hardware wise both your computer and the server aren't the cause. If you check your ping to our server (either use commandprompt or /ping*) we see that it is rather high. the /ping commands colour displays how playable our server is for you, if you're green, you're all good. Orange is laggy, but playable. Red is just straight out unplayable.
I find it very unfortunate for you to be having these issues, but it really depends on your internet connection, as other players from the usa don't have these problems.
I hope this clear things up for you.
*The /ping command is less accurate as it is calculated within a tick. This means that if the server runs at 20 tick/s, it adds a delay between 0 and 50 milliseconds. Use commandprompt ping for a more accurate measurement.