Does immediate="true" help the commandButton? Dumb question, I know.
Sounds like an almost completely different page depending on circumstances. I'm trying to imagine what it looks like.
Can you grab the handle to the component, then add a listener in the backing bean at runtime when enabling happens? Don't know if you can do that with a backing bean listener type method, but you certainly can do it with a listener class.
Good luck with it.
Paul