Grease a 9-by-13-inch baking dish. In a large bowl, whisk together the eggs, milk, 1 teaspoon salt and the black pepper.
In a medium skillet, heat the olive oil over medium-high heat. Add the scallions, garlic, remaining 1/2 teaspoon salt and the crushed red pepper and cook, stirring, until fragrant, about 2 minutes.
Transfer the bread cubes to the prepared baking dish. Add the scallion mixture, ham and half of the cheese; toss. Pour the egg mixture on top. Sprinkle with the remaining cheese. Cover with plastic wrap and refrigerate until the liquid is absorbed, about 1 hour.
Preheat the oven to 350 degrees . Discard the plastic wrap and bake until golden and bubbling, about 45 minutes. Let cool for 10 minutes before serving.