Treat fullscreen as desktop spaces in the matter of navigation

Did you consider using Keyboard Maestro?

Here you can see how I deal with something this. I use it to move cursor and windows between screens, but is really easy to modify per your requests.