Heat oil in a heavy bottomed pan; when hot, add the mustard seeds and allow to crackle. Add the onions and sauté on low to medium heat till light brown.
Add the cinnamon and chillies; sauté for another minute or two. Then add the chopped tomatoes and mix well. Keep stirring to ensure nothing sticks to the bottom and sauté for another 4-5 minutes on low heat till the tomatoes are completely broken down and become a thick, mushy mixture.
Add most of the sliced ginger (reserve a few for garnish) and all the powdered spices. Mix on low heat for another minute or till the mixture comes together and oil starts to leave the sides of the pan.
Add the tamarind and one cup of water. Mix and bring to boil and simmer covered for two minutes. Next, add the curry leaves and thick coconut milk. Mix and continue to simmer on low heat for another minute.
Season with salt and add the halved eggs. Stir gently so as not to break the eggs and simmer covered on the lowest heat for another 3-4 minutes.
Garnish with chopped coriander and sliced ginger. Add slit green chillies also if you wish to.
Serve warm.