As chaves do Fluxbox devem suportar esse tipo de comportamento; no entanto, notei algumas irregularidades ao tentar ações complexas também. Consegui fazer isso funcionar usando o seguinte:
OnDesktop Mouse1 :If {Matches (Name!=)} {RootMenu} {HideMenus}
Enquanto o padrão de correspondência parece grosseiro, parece funcionar. Eu não tive tempo de investigar por que isso funciona com o Fluxbox, mas eu esperava que as propriedades verificadas fossem (não) definidas quando o menu do Fluxbox estivesse ativo.
Espero que isso funcione para você (ou pelo menos um ponto de partida). Se você encontrar um padrão de condição melhor para aplicar, eu ficaria curioso em ver isso.