Mario,
The first thing I would suggest is that every page on the site needs enough unique quality content to set it apart as a truly unique page. there's no hard and fast rule to how much content each page would need, but a general guideline I recommend to clients is between 400 and 1000 words.
As much as it would be ideal to be able to ensure you're found for every single area of practice for every single town you're targeting, it's best to start by optimizing your site for the larger geographic area, and for the two locations you have a physical presence in.
To that end, I would suggest shortening your page Titles to focus on two or at most three word keyword phrases, and including Brevard | Collier FL in each title which allows you to begin to be found for both counties. So for example, your main Criminal Defense page's Title might then be "Criminal Defense Attorneys Brevard | Collier FL".
Next, I'd suggest putting both location addresses in the footer of each page where those "spammy" type links had been. These should be in HTML so search engines can pick them up.
From there, I would encourage you to then get both office locations into Google Place pages as verified listings. A good article on how to do this can be found at http://themilwaukeeseo.com/2010/11/07/google-places-guide/ and another at http://www.sugarrae.com/seo-sphere/how-to-pimp-your-google-places-page-for-better-rankings/
After these are set up, get your listings into Yahoo Local, Bing Local, CitySearch, Yelp, YP.com, Superpages.com, and any relevant directory specific to each county - these would be smaller sites but highly refined because they're dedicated to your locations of choice.
That's a pretty strong start in the right direction.