Wash the okra thoroughly and pat completely dry using a kitchen towel. Trim the ends and make a slit lengthwise(not all the way through) in each bhindi using a sharp knife. Cut each into 1.5-inch pieces.
Heat 2 tablespoons of mustard oil in a pan over medium heat. Add the bhindi and sprinkle with ½ teaspoon salt. Sauté until lightly crispy and golden. Remove to a plate and set aside.
In a bowl, whisk room temperature yogurt with all the ground spices except garam masala powder. Mix until smooth and lump-free. Let this sit while you prepare the rest.
In the same pan, heat up the remaining oil. Add cumin seeds and let them crackle. Stir in garlic paste and chopped green chilies (if using).
Add chopped onions and fry for 5-7 minutes on low medium heat until deep golden brown. This builds the savory base typical of dhaba-style dishes.
Sprinkle in the besan (gram flour) and sauté on low heat for 2–3 minutes to eliminate any raw taste. It adds nuttiness and helps thicken the masala.
Mix in the crushed tomatoes and cook until the oil begins to separate from the sides.
Lower the heat and add the whisked yogurt-spice blend. Stir continuously while cooking until the yogurt thickens and oil starts to release. This helps prevent curdling of yogurt and gives the dish its signature creamy tang.
Add salt to taste once yogurt has cooked off and ¼ cup of hot water if needed to adjust consistency. If using, stir in onion petals and let them soften slightly.
Add the fried bhindi back to the pan and mix well. If the masala feels too thick, loosen it slightly with a splash of water. Cover and let cook for 3-5 minutes or until bhindi is fully cooked.
Sprinkle in garam masala, crushed kasuri methi, and freshly chopped cilantro. Serve hot with rotis, parathas, or dal-chawal.