I was able to make it work in a Smart Rule, but not a Trigger. Here's my condition:
(({!GLENTRY.ACCOUNTNO!} >= "9000") && ({!GLENTRY.GLBATCH.JOURNAL!} == "EBITDA")) || (({!GLENTRY.ACCOUNTNO!} < "9000") && ({!GLENTRY.GLBATCH.JOURNAL!} != "EBITDA"))
So, if the user is in the EBITDA journal they can use any 9000+ account without error or they can use any account <9000 in any other journal without error. No custom field required. It would be nice if the same references could be used on a Trigger for consistency, but at least it works in the Smart Rule.