Depending on the business, it's really not that hard to get most local businesses on to the front page for searches like CityName+TypeOfBusiness using ethical means but it can certainly be harder when you're competing against the world. There's a million tips out there, and here's the ones I find to be best bang for your buck:
-Use Analytics software like Google Analytics to get an idea of your stats
-Use SEO/Rank tracking tools like http://RavenTools.com to measure where you and your competitors rank for your key terms
-Use tools like OpenSiteExplorer.org to see what links your competitors have that you don't, and try to get links from them if feasible
-If you have limited web resources, move your site to a platform like Wordpress or Drupal which can easily give you many SEO bells and whistles
-Make sure each of your pages has distinct, descriptive page titles and descriptions
-Make sure you 301 redirect all your pages to either www.site.com or site.com to ensure search engines (namely, bing & yahoo) aren't spreading your rankings to both versions of your page.
-Use Google Sitemaps to make search engines more easily know when your pages are updated