The problem posed by this article is that companies are wasting candidates' time by making applying take time while offering no actual position.
What if we imagined that companies charged a fee to apply instead of charging candidate time? Then these ghost positions would be obviously considered fraud. We don't normally pay applicants for their time, but isn't a ghost position requiring substantial time to apply also a fraud on the applicant?
All I'm saying is, by removing the payment in time, you remove the fraud.
Applicant spam is an orthogonal problem that has other solutions. Linked-in could limit applicants to one application every 30 minutes, max 16 per day. Employers can use keyword filtering as they already do.