I have run a 6870 with an i3 530 and it did not cause any bottleneck for most titles. Your CPU should be sufficient. Which games are you playing? And at what resolution? The 6870 won't be able to max out every title out there, so if you are running into performance problems in Crysis, Metro 2033, or Witcher 2, you'll have to turn some settings down. If you're playing Grand Theft Auto IV, framerate drops are par for the course, as that game doesn't run all that well regardless of what hardware you have.
There are only a handful of games where your CPU may hold back that graphics card. If you are playing Battlefield 3 on larger multiplayer maps, you pretty much need a quad core in order to get good framerates. Most titles will still run fine with your current CPU though.
Your speed is normal for idle conditions. SpeedStep will slow down the CPU when it doesn't need to do lots of work to save power. Try checking CPU-Z while a game is running, it should clock up to 2.93GHz. You can disable SpeedStep in your BIOS if you want to lock the clockspeed to maximum.