First, kudos to you for making a go of it with with your website. That being said, as someone else here mentioned, a good website can be difficult and time consuming. If your intention with this site is to bring in customers and make money for you, then it needs to be treated as a professional task, not one that you put together in 5 minutes. Not to be harsh, but that is what it looks like right now. Regardless of how bad your competitors website may look, you should have enough pride in what you do to judge your work on its own merits, not relative to others. My house may look better than some crack den, but that doesn't mean my house looks good.
If you are not well-versed in website design, and don't have the time to learn it before you want to put up a site, you really have two options that will get you decent to great results. The first option is to go to a pro. This is expensive, and probably not within your budget (I know its not in mine). Your second option is to get a template. Now I know this may be taboo to some, but it really is about the only inexpensive way to put up a good looking, functional site in short time with little expense.
As to the limitations of your web host. Really? A search for web hosts must return something on the order of a bazillion to the bazzillionth power results. Most of which will host your site for just a few bucks a month and include all the feature that your current site could possibly need and more.
Either you are a professional or you are not. Right now your site says you are not and are quite possibly the same kid your customers should expect to see mowing their lawn over the summer. Don't mean to be hash, but if you are going into business, go into business!
**Full Disclosure: I myself do not have a website (small town, lots of word of mouth, etc), so add as many grains of salt to this advice as you see fit.