Is this not a good idea? It makes average users more selective about what content they are sharing, and reduces scam/bot content that can currently spam post links for free.

Facebook knows what you want to see, because you can follow pages and individuals. They choose to show those scam/bot posts to you anyway. This isn't to fight bots.

Facebook actively courted publishers so they'd post links to their content on their pages. Now they want to charge them for the privilege.

First hit’s free.

Very few spam/scam posts I see rely on external links. FB is an all in one scammers paradise. This just seems like a transparent attempt to keep people on platform.

What do they rely on then?

This is for Facebook Pages, not for users. Average facebook daily user can keep posting 35 links a day to their favorite slop site.

Those 35 links to "you wouldn't believe which politician wants to kill our kids now" type posts are why I quit facebook. There is value in know what my friends are doing, but the negative value of that hate isn't worth it.

I wish there were a way to filter links and reshares out of my feed completely.

If it is for that reason and not a money squeezing/enshittification thing, it seems like a big admission their feed algorithm doesn't work.