The biggest problem with this is that we already have regulations than punish banks for processing illegal transactions.
If you don't want that, and you want the banks not to refuse any legal transactions, that's easy. They then don't refuse to process any transactions at all.
If you do want them to refuse illegal transactions, and they're allowed to refuse legal transactions, that makes it easy for the bank because then they just refuse anything marginal even if it's totally legitimate. This is what we have now. It's not a problem for the bank but it's a big problem for the people getting unjustly locked out.
Expecting the bank to process no illegal transactions and all legal transactions is an impossible burden, because nobody actually knows what that means. The meaning of a lot of laws isn't even settled until they get litigated in court and set a precedent. It would require the bank to be infallible, and know everything about everybody's business, because a mistake in either direction would incur penalties.
So which one do you want? (The first one actually looks pretty good when you consider the alternatives. Let the police be the police and the bank be the bank.)