Ok, first of all you need to post the specs of each computer that is running on this internet connection through your router (just the network specifications). You must keep in mind that the slowest network card linked up with the router will determine the maximum speed of your internet connection. Ex. 100Mbps transfer mixed with 1000Mbps capable computers will result in the faster computer defaulting to a max. 100Mbps transfer speed. Additionally, the more computer you connect to the router, the more traffic there will be and therefore the internet will become slow and possibly unstable as the size and number of transfers happening increase. Linksys routers work on the principle of "guess and check". When it receives information it starts at the first internet connection (it's hard to say which one it may consider to be the first) then sends a message to determine whether or not it was that computer who requested the data. If not then the router will send a message to the next connection and so on until it finds the right computer that requested information. Obviously this is quite a slow process as it works on an O(n) (order 'n') operation (that's just a little bit of programming knowledge- not important lol).
After that whole explanation i unfortanately don't have a great solution to your problem. I use a Linksys router very similar to the one you are using and I experience the same problems as well. Aside from rewiring my entire network, I have done everything to my knowledge that can be done to fix the problem. The best results in speed gain do however, come when only one computer is up and running and using the broadband connection on its own. That way the traffic problem is eliminated and speeds tend to increase quite significantly. But it doesn't give the same performance as a computer linked directly from a modem for some reason. That's the downside.
Other things you might want to check to see is that you are using high quality 'Category 5 E' cables in your network. They will provide the highest uninterruptable transfer of data. Since you mentioned that the internet works better in some rooms than others, you might also want to check the wiring schemes used on wall ethernet jacks (if they exist) to be sure they are wired correctly since that must be done in a certain order.
That's pretty much all I can tell you at this point. If you have any other questions feel free to ask!