A late-race wreck involving Carson Hocevar sent the race into a two-lap overtime with Nick Sanchez in the lead.
Eckes, 22, powered to the lead on the restart, briefly lost it to Sanchez, and grabbed it back before a caution was displayed for a multi-truck wreck in Turn 4 on the last lap.
The win is the first of the season for Eckes, who had to fight back from the rear of the field mid-race after a speeding penalty.
Eckes, a native of Middletown, N.Y., has one previous series victory and moved in the offseason from ThorSport Racing to Bill McAnally Racing.
“There’s a lot of thoughts for sure. It was a tough offseason,” Eckes said. “I’m driving as hard as I ever have – a have a lot to prove to the people who know who they are.
“Just really happy. Thanks to this team, they work so damn hard and this is what makes it all worth it. I’m pumped. This is going to be a really good year.”
Sanchez ended up second, John Hunter Nemechek third, Bayley Currey fourth and Matt DiBenedetto rounded out the top-five.
Completing the top-10 were Ben Rhodes, Timmy Hill, Chase Purdy, Matt Crafton and Jack Wood.
The race featured 11 cautions – including seven in the final stage – that covered 58 of the 137 laps completed.
Following the caution between Stages 2 and 3, all the lead-lap truck pit with Nemechek first off pit road.
On the restart on Lap 68, Nemechek was followed by Corey Heim, DiBenedetto, Stewart Friesen and Tyler Ankrum.
Akinori Ogata spun off Turn 2 on Lap 78 and tagged in the inside wall on the backstretch to bring out the fifth caution of the race.
The lead-lap trucks all pit with Nemechek first off pit road. Both Eckes and Bret Holmes were penalized for speeding on pit road and had to restart from the rear of the field.
Heim and Colby Howard collided on pit road during the stops but were both able to continue in the race.
On the restart on Lap 84, Nemechek led the way.
Sanchez appeared to fall off the pace on the restart and Heim slammed into the rear of his No. 2 truck to immediately place the race back under caution.
The race returned to green on Lap 94 with Nemechek still out front, followed by Purdy, Ankrum, DiBenedetto and Rhodes.
Dean Thompson got pinched into the wall and wrecked on Lap 97 to bring out the seventh caution of the race.
Nemechek remained in the lead on the restart on Lap 103.
With a push from Crafton, Wood moved briefly into the lead on Lap 104 only to see Nemechek reclaim it on Lap 105.
Just after Wood returned to the lead on Lap 113, Nemechek got into the back of Wood and spun him out in front of the field, which brought out a caution. Grant Enfinger and ty Majeski had to take evasive action to avoid getting collected in the incident.
Nemechek led the way when the race resumed on Lap 121 followed by Purdy and Currey.
Just after Sanchez got a shove into the lead on Lap 123, Hocevar and Lawless Alan hit the wall in Turn 3 to place the race back under caution.
The race returned to green with six laps remaining and Sanchez out front followed by Eckes and Rhodes.
On Lap 131, Hocevar wrecked again in Turn 2 to bring out the 10th caution of the race and send it into a two-lap overtime.
Sanchez led the way on the restart followed by Eckes, Rhodes, Nemechek and Purdy.
Crafton held off a late charge from Majeski and Nemechek off Turn 4 to take the Stage 2 win.
Majeski ended up second, Nemechek third, Rhodes fourth and Heim rounded out the top-five.
Following the caution between Stages 1 and 2, several lead-lap cars elected to pit but Crafton stayed out and inherited the lead. Zane Smith was first off pit road among those who pit.
On the restart on Lap 38, Crafton was followed by Majeski and Rhodes.
NASCAR was forced to display a caution on Lap 40 for debris on the frontstretch, which turned out to be a piece of ballast. That will likely be a big penalty for team responsible next week.
Crafton remained in the lead on the restart on Lap 45 followed by Majeski and Rhodes.
Kaden Honeycutt got a big push on the restart to take the lead for the first time in the race.
Crafton powered back to the lead on Lap 46 as Honeycutt appeared to fall of the pace and dropped to pit road to make a green-flag stop.
With five laps remaining in the stage, Crafton held a small lead over Majeski as Rhodes remained in third.
Eckes held of a furious charge from Zane Smith in a one-dash to the finish and claimed the Stage 1 win.
Enfinger was third, Crafton fourth and DiBenedetto rounded out the top-five.
With qualifying canceled by rain, Zane Smith started on the pole but Eckes powered to the lead on Lap 1 with a push from Majeski.
With 15 laps remaining in the first stage, Eckes maintained a small lead over Zane Smith with Enfinger in third.
Daniel Dye fell off the pace and a lap down with 10 to go in the stage.
On Lap 24, Tanner Gray and Layne Riggs made contact and both hit the wall to bring out the first caution of the race.
A handful of trucks elected to pit but Eckes remained on the track and in the lead when the race returned to green on Lap 30.