One thing I forgot to mention...
Your company likely services a very local area, correct? Are you including the names of the towns you service in the keyword phrases you hope to rank for? If not, perhaps that will have a positive effect on your ranking efforts.
In my experience many people think they are targeting well-searched phrases, but they have done no research to back that up. Just guesswork. Or they think they are ranking well, but don't realize its for their brand, which they should rank well for! Or, they rank well for a phrase that is not worth targeting because it has minimal searches.
Again, good luck;)