Prepare the Base: In a pot, add the onions, tomato, cashews, ginger, and green chilli. Add enough water to cover them and boil on medium heat for 5-7 minutes. Do not overcook.
Make the Paste: Drain the boiled ingredients, but save the water (don't throw it away!). Let the ingredients cool slightly. Transfer them to a blender along with the garlic cloves and coriander stems. Blend into a fine, smooth paste. You likely won't need extra water, but if you do, use a splash of the reserved boiled water.
Fry the Eggs: Heat oil and butter in a pan or kadai. Add the boiled eggs (make sure you have made small cuts/slits in them). Sprinkle a pinch of salt and red chilli powder. Fry on medium heat for 1-2 minutes until the skin is slightly golden and blistered. Remove the eggs and set aside.
Sauté Whole Spices: In the same pan with the remaining oil/butter, add the bay leaf, star anise, peppercorns, cinnamon, cardamom, and cloves. Sauté for a few seconds until fragrant.
Cook the Masala Paste: Add the prepared onion-cashew paste to the pan. Sauté on medium heat for 2 minutes.
Add Ground Spices: Lower the heat and add turmeric, red chilli powder, cumin-coriander powder, garam masala, and salt. Mix well and sauté for another 2 minutes until the masala becomes dry and the oil starts to separate.
Simmer the Gravy: Pour in the reserved water (from step 1) to adjust the consistency of the gravy. If you want it thinner, add a little plain water. Cover and cook on low heat for 5-7 minutes.
Combine and Serve: Once the oil separates on top, add the fried eggs and chopped coriander leaves. Mix gently. Cover again and let it simmer for a final 5-7 minutes to let the flavours absorb. Serve hot!