Set a large skillet over medium-high heat with the oil. Once hot, add the shallot and garlic and cook, stirring often, until softened and just beginning to brown, about 3 minutes. Add the chopped spinach, a handful at a time, stirring until wilted through. Continue adding and stirring until all the spinach has been used. Cook until wilted and bright green, about 2 minutes longer.
Transfer the mixture a large mixing bowl and while it is still hot, add the cream cheese, stirring to allow the cream cheese to soften and melt. Let cool 5 minutes, and then add the mayonnaise, salt, and black pepper.
Cut the egg in half, lengthwise, and remove the yolks into the bowl with the spinach mixture. Using a fork, mash the yolks into the spinach mixture, making it as smooth as possible. Transfer to a piping bag, or a large plastic food storage bag with the end snipped off, and pipe out the filling into the center of each egg. Top with feta and serve.