Melt 1 teaspoon butter in a small skillet over medium heat. Add mushrooms, bell pepper, and green onions; cook until tender, about 5 minutes. Stir in ham until heated through, about 1 minute. Season with salt and pepper. Set filling mixture aside in a small bowl and keep warm.
Beat eggs together in a bowl; season with salt and pepper.
Heat the same skillet over medium-high heat. Add remaining 1 teaspoon butter; heat until foaming. Pour in eggs and cook for 30 seconds. Lift the edges of the omelet so that the uncooked egg runs under the cooked edges and comes into contact with the hot skillet. Shake and tilt the skillet to move the uncooked egg. Repeat until the top is set but still moist and soft, about 2 minutes.
Spread the filling over one side of the omelet. Fold the other half over the filling and slide omelet onto a plate.