Heat the olive oil or ghee in a large 12'' saucepan or skillet (make sure it has a tight-fitting lid). Once hot, add the chopped onion and saute until soft and translucent, around 3-4 minutes.
Add the grated garlic, ginger, tomato paste, and all the spices to the pan, stirring until incorporated, then cook for 1 minute more.
Carefully pour in the crushed tomatoes and garbanzo beans and stir well (you may not need to add as many tomatoes, depending on the depth of your pan).
Shake the coconut milk well, then add ½ of the can to the sauce, stirring until homogeneous and lightened in color. Season to taste with salt and pepper, then add more coconut milk, if desired. Allow the sauce to come to a simmer.
Once bubbling, use a spoon to make 6 to 7 wells into the sauce and carefully crack an egg in each one.
Cover the saucepan with the lid, adjust the heat to low, and allow the eggs to cook for around 7-8 minutes, until the whites are set. The yolks should be cooked just under your liking, as the residual heat will continue to cook the eggs as it sits.
Remove the pan from the heat, garnish with fresh cilantro, feta, and lime juice, then serve warm with naan or toast.