How is a one-sided contract legally enforcable?

It's not one-sided. You've furnished them with information (in this case, about your past). If they choose to use the information, then they're in a contract and on the hook to pay you a consulting fee if they don't offer you a job. If they don't use it (i.e. they don't call your references but decline for some other reason) they don't owe you anything.

If you put in your email signature "By reading this email you have agreed to mail me $5", the nature of that one-sidedness is much clearer.

Not the same thing. I can't legally say, "for reading this comment on HN, you owe me $10" because that's ridiculous. There is no contract when you read my post on a message board. I've given the information freely; the intent is clear.

I could, however, offer you information (that I would have reason to charge for) upfront (without asking for payment) and say if you use any of this information, you owe me a finder's fee. That's legal: to give information and charge a fee for the use of it. (Of course, most people who are in that sort of business-- selling data-- charge for the information upfront, because it's difficult to charge per-use.)

What you are saying is that any checking of references constitutes a job offer (and promissory estoppel applies). If they don't check, and decline you for some other reason, they didn't make you an offer and don't owe you anything.

For junior-level roles, this may not be worth doing, because reference checks aren't competitive (i.e. you just need not to have horrible references, but turning up 7.5-ish references won't sink you because some other guy has 8.0's) and failing one is really rare (you have to seriously fuck up). However, for executive roles where reference checks are competitive and colon-searching ("back-channel" references not provided by candidate) is common, it's probably a good idea to have something buried in the fine print that entitles you to a consulting fee if they check any references and pass on you. Make sure there's a clause that also makes it apply to back-channel references (on the argument that they were discovered using private information you furnished) as well.

That's the real reason why I don't have my resume on LinkedIn. I can treat previous jobs as "private information" and if I'm ever dinged on a back-channel reference, have all sorts of legal recourse I wouldn't have if I put that information on the web. It's not something that I need to worry about now, because reference-checks aren't competitive until you're in the running for CxO-level roles, but 10 years from now when I'm looking at high-level roles that involve double-digit reference counts and penetrative back-channeling; if I'm ever dinged on a back-channel reference, I want to be able to say, "You, sir, owe me for misuse of private information". (They can attempt to prove they didn't misuse private information-- remember that neither they nor I want to go to court-- but that would at least give me the identity of the show-stopper.) If I put my employment history on the web, then it wouldn't be "private".

That's also why I regret attacking Google (although I didn't specifically mention that I worked there; I was "outed"/doxed) in March 2012. The company does have severe managerial problems (despite excellent engineering and great people overall) but I wish I hadn't been the first one to haul that out into the open. It now means that my having worked for Google is public information and I wouldn't have the same legal ground if someone back-channeled Google; they could argue that they already knew it based on my web presence.