I think the only reasonable and fair solution is building a reputation system on top of DNS. Browsers and message apps would show a warning if the score for a domain is low and completely block those that are rated "known scam" unless you turn on developer settings.
You start out at "suspicious" and gain trust with time. Collisions with well known names or high outgoing traffic give you a penalty but you can defeat it with enough positive votes. Domain owners with a high score would be able to vouch for other domains with an entry in `.well-known` and get them to high status faster, with penalties if they end up being scams to prevent "trust as a service" operations.
I don't know who we can trust to manage it. Mozilla can't really do it alone, Apple and Microsoft are good candidates but Google is actively making money from scams and they would try to push for ID verification if they joined.
We’d just end up in the same situation email has where only the big email providers can reliably send email.
The better solution is smarter LLM filters. Most of these scams are incredibly obvious and rely on human frailty. Essentially the elderly, exhausted parents, stressed students at finals, etc.
Alternatively Apple and Android should make it easier to set DNS and content filters but not be able to provide those services themselves.