For anyone else who comes across this problem, here’s how I fixed it:
About line 284 of ext.geo.php, I replaced this:
<script src="http://maps.google.com/maps?file=api&v=2.58&key=<?php echo $this->fetch_setting('google_key') ?>" type="text/javascript"></script>
With this:
<script type="text/javascript"> document[dot]write(
'<script src="http://maps.google.com/maps?file=api&v=2.58&key=' +
{
'mysite.com': 'google_api_key_1',
'subdomain1.mysite.com': 'google_api_key_2',
'subdomain2.mysite.com': 'google_api_key_3'
}[location.host] +
'" type="text/javascript"><\/script>' );
</script>
Replace the [dot] above, with an actual dot/period(.)
So it will disregard the key you put in the CP, and it will be hardcoded, but it’s solves this particular problem.
(Would still be better to have the extension use multiple keys though).