I guess I would ask the question, why use Google to geocode the data? There are several other geocoding methods out there besides Google that I would try if I feared violating terms of agreements. Bing and Yahoo both have geocoding tools, but you may be in violation there too. When you use terms like spatial analysis, it looks to me like you are doing more of a GIS project. GMaps are great for displaying information, and works very well for that, but they are not a spatial analysis GIS tool. You could try some other tools availible, if you have GIS capability, you could use other services for geocoding locations. Check out ArcGIS Online (Google it), that is one I can think of that may allow you to use data from thier servers to do what you are trying to do, again check the TOA, but they are good about answering questions via email, and have good forums as well. It is free for personnal use, but may have to pay for a research project. If you are associated with a university, you should be able to get the software at an educational discount, and it is built for doing spatial analysis. If you use thier GIS software, then you can connect directly to thier servers for geocode locations. I agree that Google seems to have the best geolocation data availible from what I can find in comparing services (fairly accurate in most cases), which probablly didn't come cheap, and would probablly be availible if you paid for the data.
Just some thoughts that I hope aren't too random, and I hope folks don't flog me for mentioning other products either.