Hi,
I think the answer to your plights is Bean Validation (JSR 303). We are currently implementing a reference implementation of this spec and will shortly release an alpha version of this framework. In fact this implementation will replace the current Hibernate Validator. The Bean Validation specification will support recursive properties checking. See also -
http://hibernate.org/459.html
In case you cannot wait I guess you could work with your proposed workaround or contribute a recursive implementation for the exiting Hibernate Validator code.
--Hardy