I wonder if the solution is remarkably simple: Make phone calls expensive again.
Get rid of unlimited/free/super-cheap rates and make all callers pay by the minute again. Especially inbound international calls.
Let people who want free communication use FaceTime and SMS and Email and whatnot. But make phone calls expensive enough that you know if someone is paying to call you it must be important.
I got my first document scanner in 1997. Because of that I still have all of my phone bills going back to that year. I just looked up my April 1997 Cincinnati Bell bill. A five minute call from Cincinnati to Charleston, West Virginia cost $1.45 ($2.31 in 2019 money).
If we can raise the cost of customer acquisition there will be far fewer scammers.
Incidentally, my total bill for that month was $104.34 -- almost the same as what I spend for cell service today. Except that now I'm paying for unlimited texts and minutes that I never use. The only advantage my phone has today is its mobility, which feels more like a burden than a benefit.