Heat a non-stick skillet over medium heat. Add 1 tablespoon of butter and let it melt, coating the bottom of the skillet.
While the butter is melting, crack the eggs into a bowl, add salt, pepper, and garlic powder (if using), and whisk until well combined.
Pour the egg mixture into the skillet and cook for about 2-3 minutes, gently stirring occasionally until the eggs are scrambled and just set. If using bacon or sausage, add it to the eggs in the last minute of cooking. Remove from the skillet and set aside.
In the same skillet, add the remaining tablespoon of butter. Place one slice of bread in the skillet, then layer on one slice of cheese, the scrambled eggs, and the second slice of cheese. Top with the second slice of bread.
Cook for about 3-4 minutes on one side, or until golden brown and the cheese starts to melt. Carefully flip the sandwich and cook for another 3-4 minutes on the other side.
Once both sides are golden brown and the cheese is fully melted, remove the sandwich from the skillet. Let it cool for a minute before slicing in half. Garnish with fresh chives or parsley if desired.