Combine eggs, cheeses, basil, and 1/4 teaspoon salt, and 1/4 teaspoon pepper in a large bowl; stir well. Set aside.
Heat oil in a 12-inch nonstick skillet with ovenproof handle over medium-high heat until hot. Add onion, garlic, and remaining 1/4 teaspoon salt and 1/4 teaspoon pepper; cook, stirring constantly, until tender. Add bell pepper and bay leaf to skillet, and cook, stirring constantly, 12 to 15 minutes or until very tender. Discard bay leaf. Spread bell peppers evenly in bottom of skillet, and set aside.
Reduce heat to medium-low. Stir egg mixture and pour over bell peppers. Cook 3 to 5 minutes or until sides begin to set. Transfer skillet to oven, and bake, uncovered, at 375° for 6 to 8 minutes or until eggs are completely cooked.
Loosen frittata with a spatula on sides and underneath. Turn out onto a plate. Brush bottom and sides with balsamic vinegar. Cut into 6 pieces, and serve immediately.