Never seen it, but what I guess is happening, is the Linux system is setting the hardware clock to GMT, then using regional settings to move it forward 5 hours. I'd do some googling and look into the NTPD service that runs (you should see that running in the system monitor). It's probably setting the hardware clock, then regional settings are adding an offset for time. You might need to disable NTPD in Ubuntu. OR it might be windows time that is upsetting things. But i'd try looking at NTPD first, and see if it solves it, since it seems to be Ubuntu causing the issue. I'm not fully up on how to do it, just trying to give you somewhere to look, I run Linux Mint, which I think runs similar services to Ubuntu.
Edit - What it might be worth doing, is as you boot between systems, go into the BIOS and check the time in there, then you can get a handle on which one is changing the system time, if they are, and which way. It might help you find the culprit, and whether its the Ubuntu NTPD or windows time services that need to be looked at.