Butter a 13x9-inch casserole or 6 to 8 individual ones lavishly with 2 tablespoons of softened butter.
Cut bread into 1-inch cubes (about 8 cups) and spread to cover the bottom of the casserole(s).
Melt remaining 3 tablespoons of butter in a large skillet over medium heat, add onions, and cook for 5 minutes, or until soft. Add garlic, broccoli, and sausage, and cook for 3 minutes more, or until broccoli is soft. Remove from the heat and spoon broccoli mixture over bread.
In a large bowl, whisk eggs lightly. Add half-and-half, mustard, basil, salt, and pepper and whisk to blend. Ladle or pour the egg liquid over the bread. Press gently with a large fork or spoon to moisten all of the bread. Sprinkle with cheese, cover with plastic wrap, and refrigerate for at least 2 hours or overnight.
Preheat the oven to 350°F.
Remove the plastic wrap and bake small casseroles for 25 to 30 minutes or one large casserole for 45 to 55 minutes, or until a knife inserted into the center comes out clean. Cool for 10 minutes before serving.