Marinate fish with ½ tbsp ginger garlic paste, ⅛ tsp turmeric, ¼ tsp red chilli powder & ¼ tsp salt.
On a flat fry pan, heat 1 tsp oil. Fry fish pieces slightly until the raw smell goes away just for 2 to 3 mins on both sides. You can also sear the fish. Keep this aside. (refer picture below)
Heat 1 tbsp oil in a pot and add cumin. When they sputter, add onions and saute until lightly golden.
Next add ginger garlic paste and saute for 30 seconds. Add tomatoes & ½ tsp salt. Saute until tomatoes turn soft and mushy.
Next add coconut, fennel seeds (optional), red chili powder & turmeric. Fry until the mixture turns fragrant & raw smell has gone away.
Cool this & add to a blender jar along with 2 to 4 tbsps water. Blend to a smooth or coarse paste to suit your liking. (refer notes). You can also use a immersion blender. Keep this aside.
Add 1 tbsp more oil to the same pot used earlier. Heat up on a low flame.
When the oil turns slightly hot, add curry leaves & green chilies.
When they splutter, add the ground onion tomato paste and garam masala. Taste test the paste and add more chilli powder at this stage if you want more heat or more deeper color.
Saute until the mixture smells good.
Pour 1 ¼ to 1½ cup water. Mix and bring it to a boil. Cook until you see traces of oil on the surface and the gravy thickens a bit.
Gently slide the fish pieces and cook covered on a medium heat.
Carefully flip or turn the pieces to the other side after 3 to 4 mins.
Cook until the fish pieces bulge a bit. This is the indication they are cooked completely. Taste the curry and add more salt if needed.
Optionally garnish fish curry with coriander leaves if desired.