Preheat the oven to 350°F (175°C).
In a skillet over medium heat, cook the breakfast sausage until browned and fully cooked, breaking it up into smaller pieces as it cooks. Drain any excess grease and set aside.
In a mixing bowl, whisk together the eggs, milk, salt, pepper, garlic powder, and onion powder until well combined.
In the prepared baking dish, layer half of the cubed bread, then sprinkle half of the cooked sausage and half of the shredded cheese on top. Repeat the layers with the remaining bread, sausage, and cheese.
Pour the egg mixture evenly over the layered bread, sausage, and cheese, ensuring all the bread is soaked with the egg mixture.
Allow the casserole to sit for about 10 minutes to absorb the liquids.
Cover the dish with aluminum foil and bake in the preheated oven for 30 minutes.
Remove the foil and bake for an additional 15 minutes, or until the cheese is bubbly and golden brown.
Remove from the oven, let it rest for 5 minutes, then slice and serve warm.