Prepare and preheat: Preheat the oven to 350°F. Spray a 9×13-inch baking dish with non-stick cooking spray.
Whisk egg mixture: In a large bowl, whisk together 9 eggs, 1/3 cup milk, 1/2 teaspoon salt, and 1/4 teaspoon pepper. Add the cheddar cheese and cottage cheese and whisk until combined.
Evenly spread the diced ham and hash browns in the prepared baking dish.
Pour the egg mixture over the top of the ham and potatoes.
Bake: Cover the baking dish with foil and bake for 30 minutes. Remove the foil and bake for 20 more minutes, or until the eggs are set and the top is lightly golden brown.
Rest: Let rest for 10 minutes before slicing and serving.
Notes
Make ahead: Assemble the casserole ahead of time and refrigerate it until you're ready to bake the next day.
Store: Let it cool completely, then cover in an airtight container and refrigerate for up to 3 days. Reheats really nicely in the microwave.
Freeze: Freeze whole or in individual slices, wrapped tightly in plastic wrap and stored in a freezer bag, for up to 3 months. Thaw overnight in the fridge.