For gaming, my list, in order of importance, would be:
GPU
CPU
RAM
Hard drive.
To help clarify your options, run these two tests:
a) Run your games, but lower your resolution and eye candy.
If your FPS increases, it indicates that your cpu is strong enough to drive a better graphics configuration.
b) Limit your cpu, either by reducing the OC, or, in windows power management, limit the maximum cpu% to something like 70%.
If your FPS drops significantly, it is an indicator that your cpu is the limiting factor, and a cpu upgrade is in order.
It is possible that both tests are positive, indicating that you have a well balanced system, and both cpu and gpu need to be upgraded to get better gaming FPS.
As to ram, no game, by itself will use more than two or three gb. But, since ram is so cheap these days, I consider 8gb(2 x 4gb) as a standard.
If you multitask at all, 8gb is highly recommended. 8gb will hold more of your stuff in ram, ready for instant reuse.
If you are on anything more than a minimal budget, consider using a SSD for at least the boot drive, and a few apps.
60gb is minimum, and 120gb will hold some games. Use a hard drive for storage and overflow.
On the cpu, games will use no more than two or three cores as a rule. The performance of the cores is more important.
If your cpu budget is $200 or so, you can't do better than a 2500K. It will run any graphics configuration well.
If your cpu budget is $150 or less, then amd and intel have viable options. Do not discount the dual core 2100 for a budget build.
For graphics, the market is very competitive, and you mostly get what you pay for.
Something like a GTX560ti or 6950 is very good for 1080P resolutions. Past that, you get diminishing increases in performance for your dollar.
UNless you are looking at triple monitor gaming, I would avoid sli or crossfire. A good single card will be simpler and cheaper.
Dual low end cards show good benchmarks, but are susceptible to microstuttering.