Heya!
I might have a little insight from my experiences, as I'm a full-time freelancer. These days I mostly make html5 for a few clients (with construct 3 of course), doing all the artwork/animations myself as well. My go-to place to find clients has been Upwork, though I've used Freelancer, Fiverr, 99Designs and Reddit in the past. Here's my inputs for the questions, though at the end of the day everyone will have different experiences hiring devs.
1. Assuming you're making a game, an in-depth Game Design Document would be your best bet for starters. But depending on the scope of the project you may want to create additional storyboards and projected deadlines or milestones. Using a hiring platform like Upwork makes creating milestones fairly straight forward for payment purposes, as well as settling disputes.
2a. I recommend using Upwork or a similar platform, to protect your interests as a client. As a freelancer it has its pros and cons, especially sucky when starting out due to the % Upwork takes. But the platform will allow you to establish milestones, or hourly rate monitoring, to help ensure you get what you pay for.
2b. This varies a lot based on their worldly location, experience level and the quality of their past projects - as well as the timeframe. Again, a quick and easy way to get an idea is to go through people's Upwork or Fiverr profiles. This will show you their past work as well as their hourly rate / project rate.
3. Contracts - However...I feel like a spokesperson for freelancing websites...but using Upwork will guarantee your work is yours alone upon payment royalty free, unless either party states otherwise. You can check the various site's FAQ / Agreements to get more details about this. However if you want to keep things secret, you can download an NDA and have them sign it.
4. This can be a huge pain in the ass, and I've been on both sides of this. Most freelancing / services sites have dispute departments and they've certainly been a breath of fresh air at times. I think a lot of freelancers, myself included, wouldn't mind creating you a small sample either for free or very cheaply to make sure you two are on the right page before starting a larger project together. I've done this countless times and sometimes the "potential" client ends up not liking my artistic style and goes with someone else - but on the other hand I've also turned down clients after this process because I can see how they manage their project and deliver feedback/opinions!
It's certainly tough to find the right dev for you, and even tougher if you need to hire multiple people to work together - like a game artist and a developer but that's a whole other topic...
Hope this helps!