OK I figured it out. This issue seems to occur when the monitor marked as primary in Windows/Nvidia settings is not the monitor with the number 1. Since you can't change the numbers manually, the only way to do that is to literally switch which ports the monitors are plugged into on the GPU.
My primary monitor (left) was assigned number 2 originally, and my secondary (right) was assigned number 1. It looks like Minecraft always tries to go to monitor number 1 when going fullscreen, even if it is not the primary monitor. And especially in this case it causes the weird mouse-running-on-other-screen behaviour.
There was also a Reddit thread about it 2 months ago, which resurfaced a few days ago again as the issue seems to be reoccurring: https://www.reddit.com/r/Minecraft/comments/bj123c/dual_monitor_glitch/.
I am also getting this issue, just the other way with the screens. Left is my main monitor, right is secondary. Game launches, and plays on the right one for some reason, and is frozen on left, but only responds to cursor movements on the left monitor.
It's really difficult to describe, so I made a video: https://www.youtube.com/watch?v=xfshKZk4pxQ.
Seems to be changing with time, some affected villagers get fixed and others get broken randomly.
Confirming this is still present on 1.14.4. Windows is set to 75Hz and every other game realizes it, but Minecraft switches to 60Hz when going fullscreen, and there's no option to change it in settings.