You are right, the problem is real.
Some mitigations/solutions:
- Have UTXOs of different sizes and do a proper coina selection when paying;
- PayJoin;
Other options using a L2, e.g. the Lightning Network:
- Pay swapping in/out on LN;
- Pay directly via LN;