Samourai wallet nothing else comes close.
Why?:
Mobile
Zerolink protocol = whirlpool
BIP47
Auth47
Spending tools:
Stowaway
Stonewall
Stonewallx2
Ricochet
How does Samourai protect itself against the script heuristic? that seems like a tough one to avoid. SW uses Like type change outputs. This is enabled by default in Samourai. The change output will be the same script type as the destination address.
No other wallet, not even desktop sparrow wallet has this feature.