Bring a large pot of salted water to a boil and cook elbow pasta until just al dente according to package directions, then drain and set aside.
In a large saucepan or oven-safe Dutch oven, melt butter over medium heat and whisk in flour, cooking for 2 minutes until it smells nutty.
Slowly whisk in milk and half-and-half, stirring frequently until thickened, about 4-5 minutes.
Lower heat and stir in 3 cups cheddar cheese and paprika until melted and smooth.
Add cooked pasta to the cheese sauce and stir until evenly coated, then season with salt and pepper.
Transfer to a greased 9x13 baking dish if not using a Dutch oven.
In a small bowl, toss shredded chicken with BBQ sauce until well coated.
Preheat oven to 375F.
Sprinkle remaining 1 1/2 cups cheddar cheese over mac and cheese, then distribute BBQ chicken evenly on top.
Bake for 15 minutes until cheese is melted and top is golden brown.
Let cool for a few minutes, then drizzle with extra BBQ sauce and top with pickled red onions, jalapeños, and cilantro.