Wash the fish and pat dry with clean kitchen towel.
Make slashes onto the fish and place them in a plate or bowl.
Now add in the marination ingredients one after the other.
Rub the masalas nicely all over the fish. Keep aside while you ready the other ingredients or keep it marination for few minutes.
Add 1 tablespoon oil in a pan and allow to heat it.
Add in the marinated fish in single layers and slightly fry them for 1-2 minutes.
Flip over and again fry for 1-2 minutes. Remove them in a plate and keep aside.
Heat the remaining oil in the same pan. Add in the mustard seeds and cumin seeds and allow to splutter.
Add in onion, curry leaves, slit green chillies and saute for a minute.
Add in the ginger garlic paste and saute for a minute.
Add in the tomatoes and saute until tomatoes turns soft and mushy.
Add in salt, turmeric powder, red chilly powder, coriander powder, garam masala powder and pepper powder. Mix well and saute for a minute.
Add in the whole fried fishes. Put on the lid and cook on low flame for about 2 minutes. Flip over and cook for about 1-2 minutes.
Splash some water and cook further on low flame with lid on for about 2 minutes. Flip and cook for about 1 minutes and turn off the flame.
Squeeze lemon juice over the fish. You can sprinkle some chopped coriander. Serve hot!