I welcome new solutions.
For me, the main problems are centered around communication and trust.
In my experience, freelancers are difficult to work with because they're hard to communicate with as they may have several projects going on at once, enjoy living a rather unstructured lifestyle, don't like to email, amongst other things.
If I have a good spec sheet that details exactly what I need done, when I need it, at a fair price, will you deliver?
I find that question to be very hard to answer when reviewing people. Though, I believe a major reason for that is because I'm not technical (my background is in interface design and not backend stuff).
I'm aware that part of the problem stems from me. As freelancers are worried about new features being added on later, changes being made, new problems arising, lack of payment, etc.
With that said, I've have some good experiences. The best being when the spec I've written is in fact good and not making any changes to it until it is delivered as written, on time. Payment being promptly made. And then discussing changes.