Utah got the ball back twice in the final minutes, but Utah's final two drives ended in interceptions by Travis Wilson.
Altogether, the Sun Devils outgained Utah 161-17 in total yardage in the fourth quarter. The comeback for ASU kept the Sun Devils atop the Pac-12 South race while Utah's misery continues.
Instead of celebrating its second win over a ranked opponent this season, the Utes left the field stuck with a three-game losing streak from contests that all appeared winnable for one reason or another.
"It's the second or third game we've let go in the fourth quarter," defensive end Trevor Reilly said. "We have to be tougher. This is such a hard one. It sucks."
Things don't look much easier for the Utes, who are on the road the next two weeks at Oregon and Washington State before finishing the season at home against Colorado.
The Utes have to win two of those to be bowl eligible, but the more immediate concern continues to be a lack of offense.
The interceptions Wilson threw at the end of the game marked the few times that Wilson looked to pass, as the Utes kept the ball on the ground for most of the game.
The Utes used a combination of runs by Wilson, Bubba Poole and Kelvin York for hard-earned yards, while the defense and special teams did their part to give Utah good field position.
The tactic worked, at least for a while, with Utah stretching its lead to 19-7 when Wilson threw a 12-yard pass to Sean Fitzgerald with 5:19 remaining in the third quarter.
But that was the last real threat as the Utes managed just one first down in the fourth quarter, which came courtesy of a pass interference call.
Wilson finished 6 of 21 for 121 yards. He was sacked four times as Utah's offensive line continued its recent struggles.
Utah coach Kyle Whittingham said that the poor line play is why Utah all but abandoned the passing game in the first half.
"If you can't protect the passer, you have to run it or you get your quarterback killed," he said. "It wasn't hard for us to figure out we had to run the ball more so we did."
The Utes finished the game with 126 yards on the ground, with Wilson leading the rushers with 44 yards.
While Utah's offense certainly struggled, it was enough to put the Utes in position to win with the 19-7 lead.
But the Utes simply couldn't stop Kelly, who finished the game 19 of 31 for 144 yards, rushing for a 2-yard touchdown at the start of the fourth quarter then engineering the six-play, 81-yard game-winning drive.
"It was a great effort by the defense for 3 1/2 quarters, but we have to finish," Whittingham said.
All the Utes can do now is focus on finishing the season the best they can, said linebacker Jason Whittingham.
"We have to put it behind us and learn from it and hopefully work as hard as we can and finish this out right for the seniors," he said.
O In short • The Utes give up 13 points in the fourth quarter and the offense fails to get a first down on its last six possessions to let the win slip from their grasp.
Key moment • ASU quarterback Taylor Kelly throws a 14-yard touchdown pass to Richard Smith with 2:40 remaining to put the Sun Devils ahead 20-19.
Key stat • ASU outgains the Utes 161-17 in the fourth quarter.