The lead changed six times and neither side was ahead by more than six points at Forsyth Barr Stadium as the Hurricanes outscored their last-placed opponents by three tries to one.
Conrad Smith, Ben Franks and TJ Perenara touched down for the Hurricanes while Beauden Barrett kicked their other eight points. Hosea Gear claimed the home side's only try and Colin Slade struck 14 with the boot.
"Maybe five more minutes and the Highlanders could have pushed themselves back in front," Smith said. "We let ourselves down with the execution but we were a lot more direct and that's what got us the points in the end."
It was a deserved second win of the season for the Hurricanes, who contributed much of the game's running rugby, even in the face of an improved performance by Otago following defeats to the Waikato Chiefs and the Cheetahs.
The Hurricanes recycled the ball quickly, especially in the first half, and scored the opening try after eight minutes following 13 phases of possession.
Brad Shields initially got across the line but was driven back before he could touch down by some fierce home defending.
The reprieve was short-lived, however, as the Hurricanes recycled the ball and popped it up to Smith, who took a half step back toward the passer and drove through a gap to score.
The conversion was missed and Slade then briefly put the home side ahead with two penalties before the half-hour mark.
Falling behind appeared to sting the Hurricanes into action and Victor Vito burst through a gap at pace after 32 minutes and passed to Franks on the wing.
The prop let fullback Ben Smith bounce off him and touched down in the left corner with Barrett adding the extras for a 12-6 lead.
Undeterred, the home side struck back as Gear spotted a gap in the line and went over for a try that Slade converted to give the Highlanders a slender 13-12 half-time lead.
Slade struck again just after the break before Perenara picked up from behind a pile of bodies on five metres, leapt over one prone opponent and twisted and turned through four tacklers before reaching out to ground the ball comfortably over the line to put his team 17-16 in front.
Jason Emery almost marked his first start for the Highlanders with a try but was forced into touch at the flag as he drove for the line.
Brad Thorn also came close to a remarkable try, beating two defenders before being hauled down just short before Slade made it 19-17 with another penalty.
The Hurricanes were back ahead by a point in the 66th minute when Barrett knocked over his first penalty of the match after John Hardie failed to release his man in the tackle.
The fly-half kicked his second five minutes later to complete the scoring and seal the victory.
Waratahs 26-27 Cheetahs
The Cheetahs withstood a vastly improved performance by the New South Wales Waratahs to record a 27-26 win over the Australians in Sydney.
The Waratahs recovered from a terrible start and the loss of Berrick Barnes to a suspected fractured wrist to lead at half-time for the first time in this season's tournament, but wing Raymond Rhule scored his second try late on to clinch it for the Cheetahs.
Robert Ebeshohn also touched down for the Cheetahs, with Johan Goosen adding three conversions and two penalties to his growing haul.
Peter Betham and Adam Ashley-Cooper crossed in the first half for the Waratahs, who have now lost three straight times to the Cheetahs and have a single win from four matches this season.
"We probably took it a little bit for granted in the second half," Waratahs captain Dave Dennis said. "We knew at half-time we were on top of them and we just couldn't execute in that second half."
The Cheetahs, on the other hand, will head to the Western Force next weekend just short of the wildcard berths and chasing a third away win.
"The guys showed a lot of guts," Cheetahs captain Adriaan Strauss said. "We were quite tired out there and everyone just got up off the deck and worked hard."
The Bloemfontein-based outfit got off to a flying start, scoring inside the first minute. Barnes sent down a long kick that Willie Le Roux ran back and chipped over the first line of opposition.
It was 7-6 when Brendan McKibbin slotted a pair of penalties but the Cheetahs touched down again midway through the first period. They quickly worked the ball wide left from a turnover and, although Rhule was brought down just short, he still managed to reach out and score while on the ground.
At 14-6 down and with Barnes replaced in pain after tackling giant lock Lodewyk De Jager, it looked all over for the Waratahs, who made six changes after last week's mauling by the ACT Brumbies. But the Cheetahs seemed to tire dramatically after their multiple phases and hard running failed to yield more points.
Betham touched down and Ashley-Cooper scored his first try in 16 Super Rugby matches, placing the ball in a second movement while on the deck. Referee Garratt Williamson awarded the try after consulting with his TV official that the ground was good and that there had been no obstruction in the build-up by the decoy runner.
That made it 20-17 to the home side at the break and, despite another injury-enforced change when prop Benn Robinson went off with a concussion after lining up for the second period, the Waratahs still led by three at the start of the final quarter.
They were caught out by another chip from Le Roux, making the yards and flipping his catch to Rhule on his shoulder.
Although the wing was stopped, the Cheetahs recycled through a couple more phases and Rhule rushed on an angle to exploit a gap in the tiring home defence and score.
The conversion made it 27-23 and all the Waratahs could muster in response was a another penalty by McKibbin.