Wash the fish fillets and blot them dry with kitchen paper.
Mix yoghurt, garam masala, mustard seeds, coriander, cumin, chilli, cardamom, and salt in a bowl.
Coat the fish in the marinade and refrigerate for one hour.
Heat oil in a saucepan and cook the onion until soft.
Add ginger, garlic, chilli, curry leaves, and coconut and cook until coconut is lightly browned.
Add tomatoes, sugar, and balsamic vinegar.
Simmer uncovered for 20 to 30 minutes until the chutney thickened.
Heat oil in a frying pan and fry the fish for 3 to 5 minutes per side.
Serve the fish hot topped with the warm chutney.