To prepare the tamarind sauce, heat the tamarind pulp in a pan with a little water. Add the jaggery, chili powder, cumin, and garam masala, then season with salt and simmer until the sauce is reduced.
Remove from the heat and allow to cool.
Put the fish cubes in a bowl, season with salt, then add the white pepper and lemon juice. Cover and allow to marinate in the refrigerator for about 30 minutes.
Whisk the hung yoghurt in a large bowl, then add the red chilli paste and cooled tamarind sauce and mix well.
Remove the fish cubes from the first marinade and remove any excess moisture by lightly squeezing them with the palm of your hand, then put the fish into the yoghurt mixture and turn until all the fish is coated in the second marinade. Cover and allow to marinate in the refrigerator for 1 hour.
Prepare a tandoor or charcoal grill for moderate heat, or alternatively preheat the grill (broiler) to medium.
Thread the fish cubes onto several metal skewers, 2.5cm / 1-inch apart, and coat with the remaining marinade.
Roast in a moderately hot tandoor, over a charcoal grill or under the grill for 6-8 minutes, or until cooked.
Remove the skewers from the heat and hang them up over a tray for about 2-3 minutes to allow any excess moisture to drain out completely. Put the skewers in a dish and baste with melted butter then roast again for a further 4 minutes.