Even I, too, dealt with receiving a Geofence notification as soon as I entered or exited Geofence. There were always delays in notifications until I found a really beautiful location library called little-fluffy-location-library that serves my purpose. Periodic updates will be periodically transmitted to your application.
According to the Documentation, he says that:
The library works using the Froyo passive location receiver (only possible with Android 2.2 and higher, so it works best with it), which listens for location updates requested by other applications on your phone. The most accurate location is broadcast to your application approximately every 15 minutes. If the location update is not received from another application within an hour, the library forces it to update the location.
I think you should try this library and let me know if it works for you!
source share