try enabling keeping the data session open while connected to wireless, it should be in your connectivity settings.
*sometimes this is listed under developer options as Cellular data always active
Sounds like your device is simply jumping onto the tower when connected to wireless using the lesser frequency available.