You don't need to keep rewriting anything really. If you have a testimonials page and a picture gallery of some sort, that'll update the header code to let Google spiders know you've updated your site. New links to it also make google realise the content is still current. So links are a biggy and always have been and always will be.
Unique content is key. Just make sure you've written a lot about what you do, and the area's you do those in need to be written a fair bit too. You need to tell Google what you want to rank for by pointing it out obviously on pages using page titles well and the page meta description (the hidden bit your guy is probably talking about.
What you build the site in usually helps too. I generally recommend Wordpress to people as you can update that easily once it is ranking without screwing up the main settings. And you can edit the pages, add / change pages, and not screw up the navigation etc.
But you should be able to take over it from your guy and not be tied into ongoing costs once it's ranking well. You just then need to continue adding testimonials or blogs or something once a month or so. And lots of lovely pictures. That's for your site visitors moreso but it'll help a little with SEO.
Adwords is cool. You want to use negative filters though. So "Tilers in London" will be competitive. Avoid that. And avoid "Tilers" and "London" on their own. You'd want to use more specific local locations and you'd find the bidding isn't so competitive so you'll get your clicks for a cheaper price. Then any clicks that are costing a lot that you find you're paying for, use the negative filter to cancel just those ones. After a week of toying around you'll find you're paying pence for each click, and a % of those should get you calls, and a % of those will turn into quotes, and a % of those jobs. So it's working out really what has been worth it click-wise and what's a waste of time. But that's not Google's fault really. It's just testing and toying for a bit yourself to clock it.