Wash rice: When ready to prepare the pulao, thoroughly wash the rice until the water runs clear. Then soak it in water. Set aside.
Heat oil and ghee in a nonstick Dutch oven over medium heat. Add the onions and sauté, stirring often, until golden brown (~10-12 minutes). The onions will determine the color of the pulao so you want them deeply and evenly golden-brown. Deglaze the pan with ¼ cup water. Once the water dries up, add all the whole spices, garlic, and ginger and sauté for a minute or two, until aromatic.
Raise the heat to medium-high. Add the chicken and allow to lightly sear, stirring occasionally, for 2-3 minutes.
Stir in the salt, green chili peppers, tomatoes (if using), and yogurt and gently sauté until oil starts to separate, about 3 minutes.
Add broth. Taste. It should taste saltier than you prefer because it’ll mellow out once rice is added. Bring to a boil.
Meanwhile, drain the rice thoroughly. Once the broth comes to a boil, add the drained rice and stir gently to mix. Bring to a boil again.
Once the rice comes to a boil again, reduce the heat to medium. Cover partially with the lid. Allow to simmer, undisturbed, for 5 minutes. The water level will reduce and the rice will rise to the surface (see video).