We discussed adding annotation based PropertyChangeHandlers here: [errai-dev] Declarative API for PropertyChangeHandlers in DataBinding
It can be done of course but would require quite a few API additions (more annotations) to support all use cases. At the time we decided that it was probably not providing enough benefit? As you pointed out the PropertyChangeHandlers provide the guarantee that when fired the UI and model will have already been updated. So, you can definitely use them.
In your case, however, you're using a UI change to trigger another UI change, if I understood correctly. So, using the widget values directly and have the model update automatically in the background might actually be more intuitive.