In my opinion, its not the banks job to decide where you put your money.
And it's not!
You decide where you put your money, in that bank or in another or in your pocket or you spend them on booze and hookers.
The thing here is that you're using a service, just because you have a bank account it doesn't mean you can use it for anything, you can't force them to send money to Afghanistan just how you can't force somebody to accept your credit card as a payment method if they don't like it. It's still is your money that you can take it out and cancel their service as the OP does but that doesn't give you any special rights, just like when booking a room this doesn't mean you're free to smoke in there.
It's a simple math game, how many clients they will lose just for that? Are people going to completely forfeit all the advantages that made them chose that bank in the first place for a few crypto transactions a month or are they just going to keep this account and open another for crypto at a different bank? I would put my money on the second.
The only way banks will ever do this is if you use them to directly link to exchanges,,, so even if they start to do this, all you need to do is go to P2P then you are transacting with individuals and not companies.
You might end up with more trouble with that one too if you're making a lot of transactions a month.
Banks have been flagging accounts that make a lot of transfers to random people over the country and I've heard of enough cases when they completely disabled the account, not just limited it from purchases like the OP experienced.
Just think what's fishier from their perspective!