I personally don't use references as a source of candidates and only call a reference when clients request them (most of my candidate pool comes through past candidates that I trust).
Regarding compensation, what the comments here seem to be forgetting is that you as a candidate have every right to turn down a job, and in almost all cases the recruiter makes more money by getting you a higher salary. In contract situations this is usually reversed, where every dollar they can negotiate you down is another in the recruiter's pocket.
Some posting of fake job ads certainly happens by lower end firms, just as hiring companies keep ads up all the time to grow their network of candidates. It's somewhat dishonest, but not sure how it hurts job seekers (not advocating it, but seems a somewhat victimless crime).
Recruiters are trained to ask everyone for referrals, and early in my career I probably did. Now I realize that if you treat candidates well, with honesty and respect, and if you provide candidates with something for free, they will refer their friends (with the friend's permission) without me aging to ask. The free service I choose is information - my blog, a monthly newsletter of tech articles, discounts to conferences and events that I negotiate for my network, inside information on companies, etc.
Many recruiters are simply not good at their job, but every industry has some of that. Find a good one that doesn't ask you for things, and that actually provides you with good information and service, and avoid the bad ones. It really is that simple. Use recruiters that your friends recommend and set parameters and boundaries (don't send my résumé anywhere without permission, only contact me in this way, don't call references until x, etc). If they don't respect your wishes, drop them and don't recommend them to your friends.