In a large heavy-bottomed skillet (cast iron is best), brown the sausage over medium-high heat. Use a spatula to break the meat into very small, uniform crumbles.
Do not drain the fat! The rendered sausage drippings are the flavor base for your roux. If your sausage was very lean, add 1 tablespoon of butter to ensure there is enough fat to absorb the flour.
Sprinkle the flour, dried sage, garlic powder, and black pepper over the cooked sausage. Stir constantly for 2 minutes. This "toasts" the flour and allows the heat to wake up the oils in the pepper and sage.
Slowly whisk in the milk, one cup at a time. By adding it gradually, you prevent lumps from forming and create a smoother emulsion between the fat and the liquid.
Reduce the heat to medium-low. Continue to cook, stirring frequently, until the gravy reaches a thick, velvety consistency that easily coats the back of a spoon. If it becomes too thick, whisk in a splash more milk.
Taste the gravy before adding salt; many breakfast sausages are already quite salty. Adjust the salt and pepper to your preference.