I just tried your game on a windows laptop and replicated your issue. It appears to be a windows only issue. The first thing comes to mind is someone mentioned a long time ago the pygame math module was buggy. Ive always avoided the math module and created my own. If you do that and the issue goes away, then you know it is a bug in the math module of pygame. If the problem persists after that i would still contact pygame devs. The fact that it works as intended in linux/mac and not in windows seems to be a bug, not code related. Usually when that happens i would pinpoint the culprit at one of the 3rd party libraries. Pygame, Pytmx, etc.
Recommended Tutorials: