Heat the oil in a large pot over medium heat. Add the mustard seeds and fenugreek seeds. Cook until the mustard seeds begin to pop, about 30 seconds.
Stir in the onion, garlic, ginger, and curry leaves. Cook for 4 minutes until the onion softens.
Add the turmeric, chili powder, tomatoes, and salt. Stir and cook for 3 minutes until the tomatoes break down.
Pour in the coconut milk and bring the mixture to a gentle simmer.
Add the fish pieces. Simmer for 8 to 10 minutes until the fish is cooked through and flakes easily.
Remove from heat and let the stew rest for 2 minutes before serving over cooked rice.