If you have it already, another alternative is to use BetterTouchTool and set it to override the behavior of the green corner button. For me it works just like Windows where there’s “minimize” on the yellow button and “maximize” on the green. I still use gestures like exposé but never have to worry about switching desktops or getting stuck in full screen.
+1 to BTT. I also love how they have a (fully disable-able) drag to split, similar to Windows' hot edges
I use Amethyst, but it's keyboard, not mouse driven, so a bit different.