Put eggs in medium saucepan and add water, making sure all eggs are completely submerged. Cover with lid.
Place pan over medium-high heat and slowly bring up to a boil.
As soon as the water is boiling, take completely off heat and leave covered for 12-14 minutes.
In the meantime, defrost spinach in the microwave and drain any excess liquid in a clean kitchen towel.
Grate and separate cheese, chop onion, and mince garlic.
After 12-14 minutes, use the lid of the pot and carefully drain the hot water from the eggs.
Gently place eggs in a colander and run under cold water until they are cool to the touch.
Return the eggs to saucepan, cover with cold water, and let sit until completely cooled. About 6-7 minutes.
While eggs are cooling, preheat a sauté pan over med-high heat until slightly smoking.
Add bacon and fry until golden brown. About 3-4 minutes.
Scoop out bacon pieces with a slotted spoon and drain on a paper towel. Pour excess bacon grease into a coffee mug or grease keeper. DO NOT WIPE CLEAN!
Return pan to stove, lower heat to medium, and add onion and garlic. Sauté until onion is translucent and garlic slightly golden. About 3-4 minutes.
Add spinach, bacon pieces, and chicken stock. Stir until stock evaporates.
Add fennel, nutmeg, and parmesan cheese. Stir until cheese is melted.
Add salt & pepper to taste.
Turn off the heat, but leave pan on burner.
Set oven to broil, making sure the top oven rack is set at the highest level it can go.
Line a mini muffin pan with tin foil.
Peel eggs, cut in half, and remove yolks.
Fill the empty egg whites with ¾ tablespoon of spinach mixture and place on muffin pan.
Sprinkle the top of each egg with the remainder of the parmesan cheese.
Place in oven and broil until the cheese is golden brown. Between 2-4 minutes, depending on your broiler.