With the win, Bell's second in a row on the 1.058-mile track, he is again tied with Custer for the most wins on the season with five.
Bell and Custer have finished 1-2 four times this year.
"I just had a really good race car," Bell told NBCSN. "This track's been really good to us and our team."
Bell's win is the 13th of his Xfinity career in just his 59th start, tying him for the most by that point with Darrell Waltrip.
Custer, who started from the pole, never led a lap.
"There at the end I felt like we had a car that could compete with him, but I just wasn't driving the car right at the start of the race and I got us behind on adjustments," Custer said. "From there, we were kind of playing catchup."
STAGE 1 WINNER: Brandon Jones won in a three-wide finish over Christopher Bell and Tyler Reddick.
STAGE 2 WINNER: Christopher Bell won with a 6.5 second lead over Justin Allgaier
MORE: Race results and points
WHO HAD A GOOD RACE: Justin Allgaier earned his first top-five finish at New Hampshire in his ninth start … Ryan Sieg placed eighth for his first finish better than 15th at New Hampshire in six starts.
WHO HAD A BAD DAY: John Hunter Nemechek finished 36th after he wrecked in Turn 1 on Lap 32 … Harrison Burton finished 29th after he was spun from contact with Paul Menard with 46 laps to go. That was after Burton had fought his way back into the top five following a slow early pit stop when a pit gun malfunctioned. The drivers had a tense post-race discussion on pit road.
QUOTE OF THE DAY: "I don't care what series he races in or who he is. He raced me in a terrible way and I just decided I needed to hear from him what his story was. I didn't like his story so I'll race him accordingly." - Harrison Burton to NBCSN after his discussion with Paul Menard.
WHAT'S NEXT: U.S. Cellular 250 at Iowa Speedway at 5 p.m. ET July 27 on NBCSN
Check back for more