Part #1:
Usually when you start on a VPS you have everything on a single general server. There's no specialization of server tasks, like a web server, database server, caching server, etc. So, the logical first technical hurdle is to start splitting tasks across specialized servers. Make your 1st VPS server the web server, and buy an additional VPS for the database. Expand from there into a memcached server.
After your tiers are split, you can turn them into farms. For the web layer, you may consider using either a load balancer or nginx as a proxy server to your "real" web servers that are doing the work. Depending on the type of database you are running, you can do something similar, except you would use either database clustering or master/slave database replication.
Farms are by definition flexibly expandable, and it will be a long time before you would run into other issues, but the next step would potentially be distribution using a CDN to cover geological latency.
Part #2:
Costs vary widely depending on the platform, application needs, and your aversion to downtime. If you can accept potentially lower downtime, you would be fine on Dreamhost. In real life though, I would buy several low-cost/low-power servers with great uptime. You mentioned $100/month for your VPS. I have the iWebFusion VPS Pro plan, and it's 30/month for 3ghz/512mb RAM. I would be able to buy a web server, DB server, and memcached server for the price you're paying, and probably still have better performance than you through specialization.
If you use open source, you can save many $1000s/month over Microsoft/Oracle/etc just in licensing and server costs. Realistic costs? You could serve a large number of simultaneous requests/sec if you get caching correctly. I can serve about 40 requests/sec if they all hit the database on the server I mentioned above. For completely cached requests, I get about 250-300. I figured it out to be somewhere around 5 to 8 million views/day on my dinky server, but my app's resources will of course be different than yours. If you want to spend the time on performance tuning, you will be able to squeeze much more out of your hardware.
From a business perspective, your main goal is to keep positive cash flow. For my business, if I have 7 customers at the low-end $9/month plan, I can cover all of my hardware and operational costs that month. Everything on top of that goes in my pocket or back into the business.