Right now, I'm searching sections of the state on Google maps for 3-4 keywords, writing down everywhere that comes up, cutting out duplicates, then typing it all up.
Is there some sort of a better way to do this? A magical Google script or some way to make a spreadsheet pull business names addresses and phone numbers straight from maps?
Straight searching keywords is utterly disgusting pouring through SEO laden search results that have nothing to do with the locations I'm looking for, but the way I'm doing it seems needlessly labor intensive.
What you want is the Google Maps place search API - have a look at the documentation here: Nearby Search | Places API | Google Developers. You'll need to sign up for a Google Cloud account to get an API key for this, and eventually this will cost you money, but it sounds like for your use case you might not exceed the free Google Cloud credit, or if you do, you'll be paying a single digit number of dollars.
You'll then need to parse the results out of the JSON format that's returned, but there is likely free/open source tooling that will help you make sense of it and load into a spreadsheet/airtable or something like that.