Preheat broiler to high. Place a rack in the upper third of the oven. In a medium bowl, whisk together the egg yolks and the egg whites until thoroughly combined and the eggs fall like ribbons from the whisk.
Heat a medium oven-safe skillet over medium heat. Add the olive oil then add the spinach, garlic and the whites of the green onions and sauté, stirring occasionally until the spinach has wilted, about 3 minutes.
Once the spinach has wilted, add the mushrooms, stirring occasionally, until the mushrooms are golden brown, about another 2 minutes. Season with salt and pepper.
Add the eggs into the pan then quickly and lightly stir the vegetables into the eggs to evenly distribute the vegetables. Cook until the bottom is set, about 1 minute.
Top with the tomato, remaining green onions, and cheese. Broil until the frittata is golden brown on top and the mixture is set, about 4 minutes. Top with cilantro, parsley and fennel fronds (if using).
To serve, slice the frittata into equal slices and use a spatula to scoop each slice out of the skillet.