Heat a small nonstick pan over medium heat. Add the bacon and cook until it reaches desired doneness. When cooked, remove to a plate with a paper towel to keep warm and absorb some of the bacon grease.
Pour out or wipe out the bacon grease from the pan with a paper towel. Lower the heat to medium-low. Add 1 tablespoon of butter and allow it to melt.
While the butter is melting and warming, whisk two eggs into a medium-sized mixing bowl until the yolk is fully incorporated.
Pour the eggs into the pan when the butter starts to bubble. This is when you know the pan is heated.
Using a wooden spoon, make swirls throughout the eggs, making sure to scrape along the edges of the pan. This helps to cook the eggs more evenly in my opinion. Make swirls for 1-2 minutes and let it finally set and cook flat so that you can start folding it over.
Season with salt, pepper, and garlic powder - all to taste. I use a pinch or two of garlic (but I love garlic).
Remove from heat just before it looks "done". It will continue cooking in the hot pan as you fold.
Using a small, flat spatula (not a rubber spatula), start turning the edges over in small folds, while going in a circle around the pan. Think of a floured tortilla being folded to close a quesadilla. Just like that!
Sprinkle some cheese on top to melt, if desired.
While you're waiting for the eggs to cook, toast the bagel and mash the avocado in a small bowl. Season with salt, pepper, and a pinch of garlic powder (if desired).