Recent research has had controlled landing on 2 motors in real robots (and one motor in simulation only). The main trick is to spin the whole vehicle around the z axis (up-down) very fast, and modulate the speed of the remaining rotors to apply forces at different places around the centre of gravity. IIRC the one-rotor version didn't work on a real robot due to limits on the frequency response of the real-world motor controller.