Preheat oven to 350ºF (180ºC). Lightly coat 13 x 9-inch (33 x 22 cm) baking dish with nonstick cooking spray. Cook macaroni according to package directions; drain and set aside.
Meanwhile, coat large saucepan with cooking spray and set over medium-high heat. Sauté onions until soft, about 5 minutes. Put 1/2 cup (125 mL) half-and-half and flour into jar with tight-fitting lid and shake until blended and smooth.
Stir onions in skillet, then blend in remaining half-and-half. Whisk in mustard, salt, and pepper and bring to a simmer. Continue cooking, whisking constantly, until mixture thickens, about 3 minutes.
Add cheddar, mozzarella, Monterey Jack, and cream cheese. Cook, stirring, until cheeses melt. Remove from heat and fold in macaroni. Spoon mixture into baking dish and sprinkle with paprika. Bake until bubbly and lightly browned, about 35 minutes.