Cut the bagels in half horizontally using a serrated knife. To give the bagels texture, toast the bagels in a toaster or in the oven on a baking sheet at 400 degrees for 3-5 minutes.
While the bagel is still warm, spread 1 tbsp of cream cheese on each bagel.
(optional but preferred) In a saute pan over medium-high heat, toast the slices of ham on each side until the natural sugars in the ham begin to caramelize and brown.
Layer three slices of ham on each bagel sandwich on top of the cream cheese.
Crack the eggs in a small bowl and whisk to combine, and add salt and pepper, to taste, and whisk to combine.*
In the same saute pan over medium heat, cook eggs to your preferred doneness. (I like soft-set scrambled eggs for less messy eating)
During the last minute of cooking the eggs, top eggs with cheese to melt the cheese.
Place the eggs on top of the ham, and top the sandwich with the top half of the bagel.
Slice in half vertically, and enjoy!