I may be in an unusual situation here in that my website exists mainly to support my consulting business. I get a little revenue from the site itself, but that is just gravy. But, maintaining the site is so simple and inexpensive relative to the other ways I could market my business that I have gotten interested in "webmastering" issues. That said, here is my take on your questions:
1. I don't ask for payment for listing on my site. I list what I think my consulting clients will find useful. Hopefully, potential clients are so impressed with my discerning taste in resources that they can't wait to throw money at me.
2. I pay for links in niche directories, the ones that someone who has done a little bit of research into my field will use to find a consultant. If I get even one client per year per listing, it more than pays for itself. The key is finding the right directories!
3. Speaking only to my own situation, the value of a listing in the "right" kind of directory (niche, local) will only go up as more and more people look online first for information of any sort.
In my field, the value of the kind of listing that you would think would help you in terms of search ranking (rather than targeted leads straight from the directory itself) is going down. In other words, a year or 2 ago, being listed in a certain handful of directories would almost automatically bump you to the top of the SERPS. Not anymore.
And as for why a directory would charge only $$ a year for listings instead of selling leads, my immediate reaction is that in some fields (such as mine), selling leads is just not done. Thinking through "why not," the answer has to do with (a) the specialized nature of the service and (b) the professionalism of those providing the service.
In terms of specialization, I wouldn't trust too many people to screen leads for me, beyond the screening that goes on at the directory inclusion level. In terms of professionalism, I think colleagues are more likely to refer appropriate leads to each other if they aren't paying $$ just to talk to each potential client.