Use your own node. Don’t reuse addresses. And don’t combine utxos you don’t want connected when you spend them. If you do these things it will be very difficult for an attacker to know two addresses are connected. Also bitcoin has no concept of blacklists.