This is a classic case of one of two things. Either the Panda Update (or it's follow-on tweaks) hammered you, or your site just got wacked for not having the right stuff for ongoing trust.
Google will initially rank a site just on the core factors. Then, over time, if other signals are not found, or if other signals are low quality (such as the mentioned anchor text all being too much alike), Google will adjust rankings accordingly.
This is why ongoing work is critical - adding fresh content regularly, obtaining new links with diversified anchor text, coming from a wide variety of sources, pointing to pages across the site, social signals - these are all important as reinforcement factors.
From a cursory look at your site I'm quite concerned about several things.
1. Unique Content
You have almost no unique content - so little that I can't see why Google would rank you significantly for many phrases over the long haul.
http://www.dentistinsaltlakecity.com/index.php?base=xcp_FeaturedServices is one example - there's nothing on this page that supports justifying this page's being ranked, especially for any important phrase. Not only is there essentially zero content, only one of the services listed is a link, without any related content wrapping around it.
That in turn offers no ability for that page to drive any ranking weight to the Teeth Whitening page that is linked in the content area. It's a similar situation on other pages, such as your staff page http://www.dentistinsaltlakecity.com/index.php?base=xcp_OurStaff. Compared to the top, sidebar and footer that are essentially duplicate across all pages, those three sentences are all of a sudden very weak when looking at the "is this page mostly unique content" perspective.
2. Topical Dilution
Then, on the Teeth Whitening page http://www.dentistinsaltlakecity.com/index.php?base=xcp_TeethWhitening
You've got "Dentist in Salt Lake City" wrapped in an h1 tag, and "Salt Lake City Teeth Whitening" wrapped in an h3 tag. While HTML header tags are not ultimately critical for SEO when all other aspects are well optimized, in this situation, it's not helping and probably adding to the hurt. This is because the h1 tag signals "this is the most important topic on this page", and the h3 not only says "this isn't most important, it's not even really important, since it's not even an h2".
The same problem exists with the Implant page. And in both cases, having the "Dentist in Salt Lake City" wrapped in an h1 is a conflict with your page titles unique to those pages.
And having "Teeth Whitening Dentist in Salt Lake City" in the footer of pages that should have a different focus doesn't help either. It dilutes those topics. ESPECIALLY because it's wrapped in an h1 tag, fighting against each page's own primary h1 tag in the main content area (the only place an h1 should be found).
3. Local SEO
From a local SEO perspective, your business address is nowhere to be found. It should be on the sidebar, or in the bottom of the main content area of each page (not even in the footer), in HTML readable text. Without an address, you're lacking that extra validation that you really are a Salt Lake City service, which just adds to the already weak topical focus depth I've already described.
4. Broken Pages
Then there's this problem: http://www.dentistinsaltlakecity.com/index.php?base=Home and http://www.dentistinsaltlakecity.com/index.php?base=xcp_Cash - you've got a handful of entries in Google's index like that. Those have to be fixed, and those URL's either need to be redirected to other pages or have unique content on them.
5. Duplicate Content
You also have a duplicate content problem because both http://www.dentistinsaltlakecity.com and http://dentistinsaltlakecity.com work. Pick one or the other, then have the other version set up to automatically redirect to the one you chose - across the whole site. (These are called "301 redirects" - it's a server instruction).
Duplicate content also exists in that http://www.dentistinsaltlakecity.com/index.php?base=home also goes to the home page, which should only be found by either http://www.dentistinsaltlakecity.com/ or http://dentistinsaltlakecity.com/ So change the links on your own site pointing to the home page (including the logo wrapped link).
6. Inbound Link Profile
As for inbound links, a quick check on OpenSiteExplorer.org showed you've got just over 350 but they're coming from only four domains. That's an extremely high link to root domain ratio. The higher that ratio, the weaker the overall inbound link profile.So you have a LOT of work ahead to build up many more links from a much larger variety of root domain sources. That alone will have a huge impact in your situation over time.
Note:
My very cursory review didn't see any duplicate content issues across your various web sites (like from http://www.dentistinprovoutah.com, http://www.dentistonuppereastside.com, and http://www.dentistincherrycreek.com ) so that's a positive. (I assume those are your sites) But it begs the question - how many sites do you have? And is there any cross-site duplication of content? That's something to be sure isn't going on.