I really don't do SER for clients but I do know the basics of what Google likes
Yes the above suggestions will help in your Page Ranking, Google will rank an optimized site higher.
As for the spam SEO companies I would stay away from them as most use "non-organic" means to increase you ranking.
Google will penalize you for using non-organic means to increase your ranking, it just takes a couple of months for Google to catch it.
By then the check is cashed and they won't reply or respond!
Google ranks a site higher if there are links from other sites that link to it.
There are alot of other things Google factors in as well but this is number one.
It can't be just a link, like with link trading (non-organic), it has to be relevant to the content the link is within (organic).
Post some links back to your site on social networking sites like Facebook and others.
Search Google for Blogs related to your web site's content and comment on the blogs with linking to your site.
Google will help you improve you page ranking go to Google Webmaster Tools
and sign up for an account.
Follow the online instruction using the ? incon if you need help, work your way down the menu on the left.
You will have to validate that you are in fact in an admin position, you will have to add either a html file or a <meta> tag.
Next open a Google Analytics account
and add the script code to each page of your site, verify that Google is tracking your site.
Between the Webmaster tools and Analytics you will have a lot of information about your traffic, search criteria and more information than you will know what to do with.
That will really help in seeing what kind of searches you are coming up in and your site's ranking for that search.
Spend a couple of hours reading through Google's webmaster guides and tips they have a ton of good information there.