Phonegap does support realtime update of your GPS.
Here is a direct link:
http://docs.phonegap.com/en/3.1.0/cordova_geolocation_geolocation.md.html#geolocation.watchPosition
In general its called "watch position", and you can set the refresh timer yourself.
Regarding enabling the GPS during runtime.
Try just to call navigator.geolocation.watchPosition()
.
Remember to grant access to geolocation on your config.xml as well, but I guess you know that ;)
I hope it helped.