Preheat oven to 350°F. Grease a 9-inch quiche or pie pan. Bring 1 inch water to a boil in a skillet. Add asparagus and cook until crisp-tender, 2 to 3 minutes. Drain and rinse with cold water, then pat dry; set skillet aside. Arrange asparagus in prepared pan in a circular pattern. Sprinkle cheese on top.
Melt butter in same skillet over medium heat; add shallot and cook, stirring, until softened, about 5 minutes. Transfer shallot to a bowl; add eggs, half-and-half, salt and pepper; and blend with a fork. Pour over asparagus and cheese.
Bake omelet until puffed and golden, about 40 minutes. Cut into wedges; serve.