Unfortunately, I don't see an easier way to write these rules themselves.
However, depending on what you want for the other postal codes to happen, you might be able to exploit the way the plugin evaluates the rules. In particular, let's assume you have two simple rules. The plugin will evaluate one rule after the other and as soon as one rule matches, it will be used. In other words: If the second rule is ever evaluated, you know that the conditions of the first rule have not matched.
So, if you don't want to provide any shipping for all other postal codes, you can use a first rule like:
Name=Exclude certain postal codes from shipping; ZIP<15000 OR 15500<=ZIP<22800 OR ....; NoShipping
For all other rules in that country zone you can then safely assume that the ZIP variable has one of the valid values and you don't have to explicitly check it in each rule again.
Of course, if you have ten different weight-based shipping costs for the other ZIP values, too, then I don't see any way to simplify the rules.