Heat 1 tablespoon oil in a frying pan on medium-high heat. Add fish pieces. When one side is brown and cooked, flip over to the other side and cook again. Drain on an absorbent towel. (Fry fish in batches if needed)
Add the remaining oil into the pan, and splutter mustard, fenugreek, and cumin seeds. Add onions, and sauté for 2-3 minutes or until browned. Add green chillies (if using), and curry leaves.
Add ginger and garlic. Saute 1-2 minutes or until aromatic. Add asafoetida, ½ teaspoon ground turmeric, ground coriander, and red chili powder. Saute for a few seconds, and season with ground black pepper.
Stir in tomatoes and sauté for 2-3 minutes or until mushy. When oil separates, squeeze out the pulp from tamarind and add it to the curry. Add enough water to make a thick sauce. At this stage, add fish, cover it with lid and cook. When the fish is cooked, check the seasonings and add vinegar. Allow the fish curry to boil. Add coconut milk and remove from flame. Serve hot.