Place a rack on bottom shelf of oven; preheat to 230° C (450° F). Line a large baking sheet with foil and lightly grease with olive oil.
Heat oil in a large skillet over medium heat. Add onion; cook until softened, about 10 minutes. Add garlic, and red pepper if desired. Cook for 30 seconds. Reduce heat to low. Add broccoli. Cook for 2 minutes. Cover and cook until broccoli is crisp tender, about 3 minutes. Remove skillet from heat and stir in spinach.
In a large bowl, combine Ricotta, Mozzarella, and Parmesan, season with salt and pepper as desired. Stir in broccoli mixture. Working with 1 portion at a time, divide dough into 4 pieces, roll out dough on a lightly floured counter into 8 inch rounds. Divide filling among dough circles (about 3/4 cup each). Fold dough over to enclose filling; press to seal edges. Beginning in 1 corner, stretch sealed edge outward, pinching and rolling dough up and over to form a decorative edge.
Transfer calzones to baking sheet. Whisk egg with 1 teaspoon of water. Brush top of each calzone with egg wash. Cut 3 small vents in each calzone. Bake until golden, 13 to 15 minutes. Serve with tomato sauce for dipping if desired.