Swaddle tofu in paper napkins and leave in a colander with a heavy weight on it - like a steel saucepan - for about an hour for the water to drain out of it.
Cut it into slices, about 1/2-inch thick.
Marinate tofu for 30 minutes in a mixture of the ingredients listed for marination.
Bake the tofu in an oven at 400 degrees F for about 30 minutes or until it is golden brown on top and quite chewy. If you cut the tofu in big slices, cut it into smaller cubes before adding it to the curry.
For the sauce:
Heat the oil in a saucepan.
Add the mustard seeds and when they sputter, add the curry leaves.
Toast for a few seconds and then add the blended chilli and onion paste.
Cook over medium heat, stirring constantly, until the mixture turns a few shades darker and the water has evaporated.
Add the tamarind pulp along with 1 cup water. If the curry is too thick, add more water.
Add salt, bring to a boil, then reduce the heat so the sauce simmers. Let it cook for 15 minutes without being covered.
Add the tofu cubes and let the sauce simmer for another five minutes.
Add the coconut milk and jaggery. Mix well and warm. Turn off the heat and garnish with coriander leaves.