So because I'm further away there's no way for me to game without lag? Surely a fast connection takes care of that, doesn't it?
I don't really know how to describe it to you simply. Throughput/bandwidth is the theoretical amount of data you can shove in or out of your connection. Latency is then how long it takes to get to where it is supposed to be going and then come back again, and that can be affected by a lot of different things, the distance it has to travel only being one of them, the destination also needs time to process the data before it sends it back, even the routers along the way have to decide which way it's going to go, and all of this adds to the time or the latency.
If I have a Ferrari and I'm on the motorway from Manchester to London, and there are no other cars, I can go at 200mph. If I'm on the same motorway with 20m other cars, then I obviously can't. I do do the same in a Fiat Panda, the results will be very different in the first case than they will in the second. It's also going to take me less time to go to the shop around the corner than it is to go to the same shop 200 miles away.
As for your question about distance, then in general, the less distance the data has to travel the less time it will take to come back. Games can work on two levels here, they can provide dedicated servers (hopefully located quite close to you), or they can palm you off into a P2P type system where one of the consoles acts as a server and the rest as clients to the game. If they are all in the same room, then you'll get nice speeds, if one is in Tokyo, one in London, one in New York, and the other in Delhi, something has to give.
Just because your theoretical maximum inbound throughput is 4mb/s, does not always mean you'll get that in any case. The PS3 if wired and your router is decent communicate at 1gb/s, the PS3 could in theory throw data at it at that speed. The trouble is, the router can ounly output that data to the Internet at 4mb/s, the the PS3 will have to be told to wait. Then what happens when the data hits another router that only has 2mb/s? Your router will be told to wait, and so it goes on, until the data finally gets to the destination, but it's too busy to handle all of the requests, process them, and respond to them? For example, if you set up a web server on your machine at home, because your outpipe is only 1mb/s, if 20 people wanting to access your web pages are on 20gb/s pipes asking for a 1GB file, they are not going to get it at 20gb/s, as your computer will have to share 1mb/s between all 20.
Bandwidth is how much you can throw out or take in at a single point in time. Latency is the amount of time that data then takes to travel to its destination and then come back again - response time.