I´m humbled I count as experienced. I don´t have that much experience with contract stuff though but I do know some things.
1. A game design document is usually standard. Keep in mind that these documents tend to change constantly during development, i.e. you thought of a inventory system that sounded good on paper and endet up being cumbersome and nobody liked it.
2a. I know of "work contracts" (could be named different based on your location) that are usually specifically for a single project. That project can be anything including "a single part of a whole". I also think the payment is just up to what both parties agree, hourly or fixed amount usually. If it takes way longer than usual (happened to me when I once had such a contract) you can just renegotiate. In my case we just made a second work contract following the first one, same conditions that basically just added another month.
2b. That varies a lot based on experience, if they are freelance or in an agency and actually also where they live. Sure, the cheap asian developer is kind of a stereotype but it´s also often true. Mostly I´ve seen ranges between 50-200$ per hour but there´s no upper limit. It´s also possible to agree on a revenue split from the finished game in turn for a cheaper (or no) hourly rate, but not everyone is up for it. If the game is a big success this can mean big money for the developer, but if it flops it flops, but it can work if the developer sees great potential in it.
3. Generally you don´t have to. The assets are automatically copyrighted and ideas cannot be copyrighted. You want NDAs if you want secrecy. I´ve also heard of Non-compete clauses that might work for this case but I´m not sure.
4. You should monitor the development of course. I´d say have a generous amount of milestones that you can check up on and if the developer just constantly sends them 3 days late and full of bugs it´s probably best to cut the contract. I think this is a very important part actually, make sure you defined cases where you can opt-out of the (full) contract. If you have 10 milestones and the third milestone you just notice it isn´t working out, cut your losses. You probably pay the 3 milestones worth of work to the dev and move on. Bugs later down the line I´d say depends on how much later. 3 days after the contract ended the dev might be like "yeah whatever I´ll fix it real quick" but a month or two later probably not.
Otherwise FromChris has some good points about those freelance platforms. They usually have a bunch of things figured out it terms of disputes, payments and such.