If you allow users to login to your site via both
http://www.yoursite.com and just yoursite.com (which you do), then you MUST have your cookie domain (AdminCP > Settings > Options > Cookies and HTTP Header Options > Cookie Domain) set to ".yoursite.com" (no quotes, but note the period at the beginning) or your users will have problems. Also, make sure to tell your users to click the Remember Me button when they login.
Try disabling your other modifications and see if you still have the same problem.
Also, you never said anything about checking the actual time on the server when this happens.