Heat 1 tablespoon oil in a pan over medium-high heat. Add onions, and sauté, stirring occasionally, for 2-3 minutes or until browned.
Add garlic, ginger and green chili, and sauté, stirring occasionally, for another 2-3 minutes or until browned. Add tomatoes, and sauté again until they start to break down. Remove from heat. Leave it to cool slightly.
Once cooled, place the mixture in a food processor. Add a little water, and grind to a smooth paste. Set aside.
Meanwhile, heat the remaining oil in the same pan over medium-high heat. Add cinnamon, cloves and bay leaves and fry for a minute. Stir in the paste. Saute for 2-3 minutes. Add ground turmeric, ground coriander, garam masala and red chilli powder. Saute for a minute.
When the oil separates, add 1 cup water. Season with salt. Bring to a boil. Simmer for 2-3 minutes. Add eggs and 1 sprig of curry leaves. Bring to a boil. Simmer for another 2 minutes.
Serve egg masala with rotis and salad.