I'm not quite familiar with constraints, but couldn't you put a "nail" constraint in the pivot of each gear to keep the rigids in place while the colisions are happening?
I kind of agree that setDriven keys are the best and easiest way to go tho....
Israel "Izzy" Long
Motion and Title Design for Broadcast-Film-DS
izzylong.com