Your xmonad.hs looks fine. "return () >> " is useless. Maybe
, handleEventHook = fullscreenEventHook
is a problem – you are throwing away the original value of
handleEventHook.
Shouldn't matter as the relevant one should be added afterward by the ewmh combinator.