In a large nonstick skillet, heat oil over medium. Add onion; cook until softened, 4 to 5 minutes. Add broccoli, garlic, and pepper flakes. Cook, stirring occasionally, until liquid has evaporated, 5 to 7 minutes. Transfer to a medium bowl; set aside to cool.
Preheat oven to 400 degrees. Form calzones: Divide dough into 8 equal pieces. On a lightly floured surface, stretch each piece out, first to a 3-by-4-inch oval, then stretch again, this time to a 6-by-8-inch oval. (Let dough rest a few minutes if too elastic to work with.)
Stir cheeses into cooled broccoli mixture; season generously with salt and pepper. Assemble calzones: Spread a rounded 1/2 cup broccoli mixture over half of each piece of dough, leaving a 1/2-inch border; fold over to form a half-moon. Press edges to seal. With a paring knife, cut 2 slits in the top of each calzone.
Using a wide metal spatula with a thin blade, transfer calzones to 2 baking sheets lined with parchment or waxed paper; reshape if needed.
Bake until golden, about 25 minutes. Serve with tomato sauce, if desired.
To freeze: Prepare recipe through step 3. Tightly wrap each calzone in plastic; freeze until firm. Transfer calzones to resealable plastic bags; label and date. Freeze up to 2 months. To serve, unwrap calzones, and place on parchment-lined baking sheets; bake without thawing until golden, 35 to 40 minutes.