Hi Stacy,
I feel your pain here as it feels ridiculous to create a ton of pages to target services + locations. What is the point of creating:
Construction CPA + Location 1
Construction CPA + Location 2
Construction CPA + Location 3
Construction Accountant + Location 1
Construction Accountant + Location 2
etc.
Unfortunately we typically see that content is king here, so creating all of these page combinations will help your rankings based on today's google algorithms. I struggle with this as it often feels a bit spammy, but it works for now. Site architecture is important to keep it all organized.
The future is heading toward properly implemented Schema where you could indicate your Services, your Locations and then indicate which Services each location offers.
Of course the BEST thing to do is to have physical locations in each city you want to optimize for as these keywords typically display localized content. Do your Local SEO campaigns on each location and get those reviews up!
Hope that is of some help.
Adam Broetje
Odd Dog Media