Preheat the oven to 350°F. Spray a 9x13-inch baking dish with nonstick cooking spray.
Bring a large pot of water to a boil. Add the broccoli and cook for 2 minutes. Immediately transfer the broccoli to a bowl of ice water to stop the cooking. Drain well and set aside.
Melt the butter in a large skillet over medium heat. Add the diced onion and cook until softened and translucent.
Whisk in the flour, garlic powder, salt, and pepper. Cook for 2 minutes, stirring constantly.
Slowly pour in the milk, whisking constantly until smooth. Continue cooking over medium heat until the sauce thickens and begins to bubble.
Remove the skillet from the heat. Stir in the dry mustard, paprika, cream cheese, and 1½ cups of the shredded cheddar cheese until smooth and melted.
Gently stir the cooked rice and broccoli into the cheese sauce until evenly combined.
Spread the mixture evenly into the prepared baking dish.
Sprinkle the remaining ½ cup cheddar cheese over the top.
Bake for 30–35 minutes, or until the casserole is hot and bubbly and the cheese is lightly browned.
Let the casserole rest for a few minutes before serving.
Notes
For the smoothest cheese sauce, freshly shredded cheddar cheese can be used in place of pre-shredded cheese.Fresh or frozen broccoli can be used. If using frozen broccoli, avoid overcooking it before adding it to the casserole.To make ahead, assemble the casserole, cover, and refrigerate overnight. Let it sit at room temperature briefly while the oven preheats, then bake as directed. Add additional baking time if needed until heated through.Store leftovers in an airtight container in the refrigerator for up to 5 days.