Grind the ingredients of the masala to a smooth paste with vinegar. Saute the masala first and then the onions, in 2 dsp of oil. Season with salt after adding tomatoes. When it thickness to a paste, remove from fire.
Clean and dry the fish on a paper towel and make close gashes on both sides. In a big frying pan, spread 2 layers of banana leaves, pour 2 dsp of oil in it. Smear the fish with the masala on both sides and arrange it on the leaves. Take all the masala sticking on to the vessel and put it over the fish. Put 2 more leaves over it and cover the vessel with a heavy lid. Put it on a very low fire. Leave it for sometime, then open the lid and turn the fish carefully and put on the lid back again and cook.
Squeeze milk from the coconut using 1/2 cup of water. Pour it over the fish. Let it simmer for sometime without the lid on. Adding coconut milk gives a certain flavour to the dish. You can avoid the coconut milk if so desired.