Place frozen spinach in a strainer and run under hot water until thawed.
Squeeze all of the water out and place in a large bowl. Set aside.
In a large sauté pan, cook the ground beef until browned.
Use a hamburger chopper (if you have one) to break the meat up into small pieces
Drain meat, reserving the fat in the pan, and set meat aside.
Cream the cream cheese with an electric mixer until blended.
Add eggs, salt, pepper and spinach to the mixer and blend again to distribute the spinach evenly.
Add meat to the spinach mixture.
Sauté the chopped onions in the reserved meat fat until tender--about 5 minutes.
Transfer onions to the bowl with the other ingredients.
Add grated parmesan cheese and stir ingredients to combine.
Preheat the oven to 350˚.
Cook pasta shells in boiling, salted water until al denté—about 10 minutes.
Do not overcook or the shells will break up.
Drain the shells and place on waxed paper to cool and drain more.
Stuff the shells with the beef/spinach mixture.
Spray two 9x13" glass baking dishes with olive oil cooking spray.
Layer shells in pans.
Cover with spaghetti sauce.
Layer remaining shells over top of the sauce.
Cover shells again with remaining spaghetti sauce.
Cover with foil and bake for approximately 1 hour.
Garnish shells with more parmesan cheese and fresh, torn parsley if desired.