If your problem is CPU usage rather than bandwidth overage, consider switching from Apache to nginx. I found my LAMP WordPress blog (hosted on a small VPS and using W3 Total Cache) was having trouble with concurrent users - traffic spikes would make my CPU usage skyrocket.
I've since switched to nginx and the results have been great under moderate to high traffic, and without the use of any caching plugin.
I heard that advice about nginx, but was concerned about lack of a mod_rewrite module for smart URL structure. Is there a way to have search-engine-friendly-urls easily with nginx?
Nginx configuration is about as powerful as Apache, and personally easier for me to grok, but you have to be able to get past the lack of documentation.
Here's the configuration file from my new project -- with the ___domain name removed. I've marked the magic bits that gets you Wordpress pretty URL compatibility. If you're actually asking about more complicated rewrites, those are all possible too -- look at the Nginx rewrite module docs.
That's a much more attractive configuration file than an Apache one.
I see that you're using FastCGI. Something I didn't mention was that I attempted to use FastCGI, but gave up because my memory usage kept snowballing until I had to reboot my server over and over again. I don't know for sure whether it would have made things any faster.
Here's the simplest way I've found how to do it. There is also a snippet of Nginx config floating out there for enabling SuperCache (and I assume Total Cache would be easy to implement too). I am able to run 8 FastCGI processes + nginx + MySQL (with InnoDB) on a 256MB VPS, but YMMV. Overall, nginx is awesome.
I've since switched to nginx and the results have been great under moderate to high traffic, and without the use of any caching plugin.