It's kind of hard to recommend web site developers since there are so many. You might want to head over to
http://www.elance.com and put up a job to see what kinds of bids you get and from whom (just make sure to be as specific as possible). Then when you start getting some bids, check out their feedback ratings to see how other people ranked their work.
When it comes to web templates, some of the best I have seen come from
http://www.templatemonster.com. They are very professional-look and have a great use of Flash. The caveat to using these templates though is they are designed for looks... not SEO. If you plan on getting a top ranking in the SERPs (Search Engine Results Pages), you will really have to focus on offsite optimization if you use a templatemonster template. Definitely worth looking at.
SEO is a pretty scary topic to discuss when it comes to outsourcing it. There are a ton of companies out there that do horrible jobs at SEO and only do basic things for premium prices (i.e. submit your site to tons of free directories and search engines). I can't really give you any advice on this since I do all my own SEO; all I can say is be careful.