Place eggs in pot of cold water (about an inch above top of eggs). Put lid on pot and bring to boil; then turn down the heat to simmer (cook for 10 minutes).
Immediately drain off hot water and place eggs in bowl of cold water with ice cubes. Quickly crack each egg shell at large end and return to ice water. When all eggs are cracked, remove shells completely.
Cut eggs in half and remove yolks. Place in small bowl and set aside.
Meanwhile, heat oil in saucepan set over medium heat and sauté ham for 1 minute. Add spinach and cook for another minute, until wilted.
Mash yolks with mayonnaise, Parmesan cheese, and salt and pepper until smooth. Add spinach mixture and stir until well blended. Stuff egg white halves with filling and serve immediately.