Wash the katla fish pieces thoroughly and pat dry.
Rub with turmeric powder and salt.
Let it marinate for 15-30 minutes (or up to 1 hour in the fridge for deeper flavor).
Heat 2 tbsp mustard oil in a pan over medium heat.
Fry the marinated fish pieces until lightly golden on both sides (about 2-3 minutes per side). Be gentle to avoid breaking them.
Remove and set aside on a paper towel.
In the same pan, add the remaining 1 tbsp oil.
Toss in bay leaves, cinnamon stick, and cardamom pods. Sauté for 30 seconds until fragrant.
Add onion paste and cook for 4-5 minutes until translucent.
Stir in ginger and garlic pastes; sauté for 2 minutes to remove raw smell.
Mix in cumin powder, coriander powder, Kashmiri chili powder, and sugar.
Lower the heat and slowly add whisked yogurt, stirring constantly to prevent curdling.
Cook for 3-4 minutes until the mixture thickens and oil separates.
Pour in 1 cup water (add more for thinner gravy).
Bring to a gentle boil, then add the fried fish pieces and slit green chilies.
Cover and simmer on low heat for 10-15 minutes until fish is cooked through and gravy is creamy.
Sprinkle garam masala and chopped cilantro.
Turn off heat and let it rest for 5 minutes for flavors to meld.