Those top 10 hosting sites are crammed with the highest paying affiliate programs, that's it. If you really want to find a good host take a look at mddhosting.com, that's who I use to host my sites, and I love it. Then gain, I'm also a professional friend with the owner from my days in the industry lol. Take a look at webhostingtalk.com as well.
If by better RAM you mean they offer more RAM, (not burstable, don't depend on that, go with what is guaranteed) then I personally would use that. Unless your site is going to have a lot of images, I wouldn't worry much about bandwidth for a while.
And for a VPS the resources are dedicated to you. It's like shared dedicated servers if that makes sense. Look for a host that gives you root access, the SSH command top will allow you to see what processes are running and the server load. I'd recommend you pay the extra money for a cPanel/WHM license, as WHM has a lot of server functions built into it so you don't have to learn the command line ;)
Shared hosting is really designed to get you started. As you start needing more hosting, you should be making enough to at least help cover server costs.
If by better RAM you mean they offer more RAM, (not burstable, don't depend on that, go with what is guaranteed) then I personally would use that. Unless your site is going to have a lot of images, I wouldn't worry much about bandwidth for a while.
And for a VPS the resources are dedicated to you. It's like shared dedicated servers if that makes sense. Look for a host that gives you root access, the SSH command top will allow you to see what processes are running and the server load. I'd recommend you pay the extra money for a cPanel/WHM license, as WHM has a lot of server functions built into it so you don't have to learn the command line ;)
Shared hosting is really designed to get you started. As you start needing more hosting, you should be making enough to at least help cover server costs.