So to answer your last question first, I think a general misconception about freelancing is that there's one type of freelancer. Freelancing really depends on the situation of the person who's doing the freelancing (some people do it full-time, others do it as a supplemental income, etc.) and the publication looking for freelancers. Great writers do freelancer work and bad writers do freelance work, so it's your job to distinguish the two.
Now, in terms of finding high quality writers, I personally have never used Upwork or other freelancer job boards to find writers, so I can't speak to those. But in my experience and from talking to people, the best way to go is referrals from your networks. Referrals allow you to get real insight from people you know or are connected to, which can give you a better idea of whom you're dealing with, especially if you're looking for longer form content (that I'm assuming you'll be dishing out more money for).
Additionally, don't forget that freelancing is a two-way street: Freelancers can turn you down, too, and that's where having personal referrals can be critical. A great freelancer will definitely be more willing to work with you if a mutual contact says, "Oh yeah, I've worked with so-and-so, and he/she is great to work with and will pay you on time." Freelancers aren't the only ones who have to be high quality; the person they're working with has to be stellar too. That means being clear about what you want, understanding that freelancers have their own boundaries (No freelancer will write you 10,000 words in an hour), and not engaging in any tomfoolery when it comes to payment.
Another caveat: You get what you pay for. No amazing freelance writer is going to write a 4,000-word heavily researched article for $50. If you really want high quality work and someone who's easy to work with, you're going to have to pay for it.