Allmendinger moved into the lead for the first time in the race when he passed Kyle Busch on the start of the final stage, but had to navigate five restarts over the final 31 laps.
With less than 10 laps to go, William Byron moved past Busch into the second and closed to Allmendinger’s rear bumper several times, but the 41-year-old veteran deftly held him at bay and won by 0.666 seconds.
Busch, Keselowski, Wallace and Chastain were the four drivers lowest in points without a victory following the race and have been eliminated from playoff contention.
With that quartet out of the playoffs it means Byron, Tyler Reddick, Chris Buescher, Martin Truex Jr., Denny Hamlin, Christopher Bell, Kyle Larson and Ryan Blaney kick off the semifinal round of the championship fight next Sunday in Las Vegas.
The win is the first for Allmendinger and his #16 Kaulig Racing team this season, which had been a disappointment as he failed to qualify for the playoffs.
Race winner AJ Allmendinger, Kaulig Racing, Chevrolet Camaro
Photo by: John Harrelson / NKP / Motorsport Images
That frustration was evident in the emotional response from Allmendinger to the win, who could be heard crying over his team radio and was in tears doing an interview on the frontstretch.
“This is why you do it. This is the only reason you do it,” Allmendinger said. “You fight. All the blood, sweat, tears, everybody at Kaulig Racing has just been such – I wouldn’t say a down year, but up-and-down year. It’s our second year in the Cup Series.
“I usually give these chequered flags away but I’m going to have to wrap this around [my son] Aero. My mom and dad, all my family and friends, those people see how much anguish and how much I put it on my shoulders when we’re struggling. It just means the world.”
Behind Allmendinger and Byron, Busch ended up third ahead of Ty Gibbs in fourth and Joey Logano rounded out the top five.
NASCAR Cup – Charlotte Roval race results