Reject or refuse to relay a valid transaction
Nodes are just software, at the end of the day.

The Bitcoin Core software will automatically relay standard valid transactions provided they meed the minrelayfee.

It would be fairly trivial to modify the software to relay only if certain other rules are met, however. You could easily do this without impacting the rest of the node functionality.

Usually, the node broadcasting a tx will broadcast it to multiple peers, so even if some peers enforce additional relay rules, the transaction will be broadcasted further by those who don't.