Unfortunately this is not possible on postfix by default.
As you already stated, it's possible to check for headers but not for missing ones.
There's another question on SF that had a similar requirement (see here)
You may achieve an integration with more complex rules by creating a policy server or wrap a perl script around a service. An example for this can be found here.
Important: There's no explicit information in the postfix documentation that states if headers from concurrent incoming mail may be mixed OR if headers on such a service are only queried mail after mail.
If the processing is mail by mail you may detect a new message on specific header fields and reset your internal state of the filter script.
Not the best solution and has to be implmented carefully, but may solve your requirement.
For testing you may just log warnings instead of rejecting the mail and see how goor your success rates are.