Run a Virtual Server or buy a Physical Server?

Solution 1:

You are neglecting a significant segment of the market: Virtual Private Server (VPS) hosting.
This has many of the pros and cons of both types of hosting (It's on hardware owned by the provider, and is not dedicated, but you typically have full control over the environment, right down to picking the OS. Redundancy is usually not as good as cloud services though that varies from provider to provider depending on how they implement their VPS solution).

Ultimately this is not a choice anyone on SF can make for you - You need to speak to several providers in each space (Dedicated server, VPS, Cloud) and compare cost/benefit information between the three classes of hosting. The one with the best overall package that meets your needs should be the one you go with.

Depending on your situation you may also consider traditional shared hosting like @sysadmin1138 mentioned as well (this may be substantially cheaper depending on the provider, but I neglect it in my consideration because you give up a lot of control over the environment when you go this route).

Solution 2:

Honestly this sounds like something perfect for a small local web host not too concerned with storage or bandwidth. I host sites similar to what your describing for my clients and, as long as they don't go nuts on storage or bandwidth, usually charge 15 to $20 monthly. So if you can find someone like me local to you I'd say thats probably a better option than hosting it yourself.

Solution 3:

Keep in mind that for something like AWS the inelastic cost is the number of hours the server is running, the elastic costs are data-transfer and data-storage. Depending on how much server you need, it may not be that much less than going with old fashioned shared-hosting.