what are the menus made of? are they gboxes, sprites, g somethings, gputchr's..?
I know I made a for loop that made most of the stuff on my thing mml writer, it was having tons of glitchy menus and it helped a lot.
it sounds like something to do with the loops to me (sorry for late response, i never got notified)
anyways check the loops stuff, maybe doing that causes some weird exit variable to change.. idk though.
make a flow chart on paper of how you want menu to work use it as a visual reference. then check your codes priority in steps for menu system and reorder the code and add cleanup for some menu's that refresh. plus check all valuable's to menu system. I had that problem with ATOAMATLK menu battle system for keeping tab on a characters in party, what thought was mem leakage was just human error!
anyway it something over looked or no done to complete the actions sequence you like to happen, so keep looking your find it and debug a program can make you flustered!