3 Years is a long time to keep a GPU. In fact I have had my GTX 460 1GB for that long and it's still a great card but is starting to struggle with these newest next generation games. I almost always buy the ~$250 card at the time and they usually last about 2 years. The newest generation of games ( Far Cry 3, Crysis 3, Tomb Raider, etc. ) are already very taxing on the current hardware. You need very high end stuff to really max those games. So my advice is to get the best GPU you can afford and replace it when it starts feeling slow.
I purchased my AMD HD 6950 over 2 years ago and it is still running strong, so, you can get at least 3 years out of the right video card.
I can run my Intel i5-3570K CPU at 4.6GHz if needed, so, that helps in some games. I can run it faster, however, I only have air cooling and I do not like temperatures higher than upper 50s to lower 60s [maximum], so, for now 4.6GHz is the highest I will run in gaming.