MQTT: How to set UNDEF when invalid data returned from Zigbee2MQTT?

No, but there is a flag to set that will treat incoming messages as a command to the linked Item instead of the usual update.

Yes.

See OH 3 Tips and Tricks, in particular the “Buying in Bulk” section.

There should only need to be one Rule to handle all the Items. Most of the rest is going to be copy/paste/edit.