Ran into this, still happens on 3.4.02 Professional (launcher 3.4.04.)
Hitting "Maximize" positions the top left corner of the window onto whichever screen it takes up the most area on, which is sane (and part of the default windows behavior.) However, the window is size is changed to whatever the size of the primary monitor is set to, instead of whichever monitor it was maximized to.
If I had to guess, I'd assume you're manually positioning & sizing the window in code to e.g. fix it's position after switching to a borderless / unresizable window mode while maximized. If you can change your code to set borderless/unresizable window mode immediately before maximizing instead of afterwards, manually positioning & sizing the window should be unnecessary? Although, Win+{Left,Right} are also broken, so perhaps I'm underestimating how much custom, manual code you have for your window's skin.