For the yogurt sauce: Whisk all ingredients together in bowl and refrigerate until ready to serve.
For the rice and lentils: Bring lentils, 4 cups water, and 1 teaspoon salt to boil in medium saucepan over high heat. Reduce heat to low and cook until lentils are just tender, 15 to 17 minutes. Drain and set aside.
Meanwhile, place rice in medium bowl, cover with hot tap water by 2 inches, and let sit for 15 minutes. Using your hands, gently swish grains to release excess starch. Carefully pour off water, leaving rice in bowl. Repeat adding and pouring off cold water 4 or 5 times, until water runs almost clear. Drain rice in fine-mesh strainer.
Cook reserved onion oil, garlic, coriander, cumin, cinnamon, allspice, pepper, and cayenne in Dutch oven over medium heat until fragrant, about 2 minutes. Add rice and cook, stirring occasionally, until grain edges begin to turn translucent, about 3 minutes. Stir in 2¼ cups water, sugar, and 1 teaspoon salt and bring to boil. Stir in lentils, reduce heat to low, cover, and simmer gently until all liquid is absorbed, about 12 minutes.
Off heat, cover, laying clean dish towel underneath lid, and let sit for 10 minutes. Fluff rice and lentils with fork and stir in cilantro and half of onions. Transfer to serving platter and top with remaining onions. Serve with yogurt sauce.
