All three noted — the first two are fixed in 0.9.113.
Salvage: that was a bug. The wreck site was picked once, and if the spot happened to be on ungenerated chunks the engine found no room and the accepted contract was cancelled. It now tries up to eight times and asks the engine to generate the ground first; cancelling is a last resort.
Nest clearing: also a bug, and your reading was exactly right. The required count was taken when the offer was posted, and progress was measured as "offered count minus nests still standing" — so if the hive grew between the offer and your landing, one nest on paper meant clearing all of them. The count is now snapshotted when you accept, and progress counts nests killed. Contracts already accepted fix themselves. A contract on an area that is already cleared is no longer offered.
Landing in a nest: already solvable. Build a cargo landing pad — you then land next to it, not at a random spot. So the landing site is something you choose and build; drop once wherever the pod puts you, place the pad somewhere sane, and every later drop goes there.