I haven't looked at the patch, but hey, what about run-time detecting of what exactly WM (and maybe its version) is running?
Sounds like refactoring WM-dependent code into some WM driver, in a vein of some Sound-Output driver, idea of which was given by Eric Pouech, I believe.
How many WMs are there? I think writing a WM 'driver' would be too much work. And as far as I know it's not the WMs that are broken, such unmanaged windows shouldn't be used due to the X11 design. But I am not an expert in this. Unmanaged windows have another problem: They will never show up in the WMs window list(Task bar, for example).
So in my personal opinion, we should try to find common properties of boarderless windows which make problems and make those windows managed. This is what my patch tries to do, but the rule isn't correct (OR it is correct, but it reveals some other bugs. I haven't checked this).
Stefan