Raina (84; 46b; 9x4, 4x6) brought up his second fifty of the season's IPL also eclipsing Virat Kohli as the highest run-getter in the cash-rich T20 league. This was the former Chennai Super Kings batsman's 30th half century.
The dashing left-hander, who was dropped on 1 by wicketkeeper Robin Uthappa, smashed Chris Woakes and Nathan Coulter-Nile for 18 and 16 runs respectively but fell to Kuldeep Yadav. Ravindra Jadeja, who was unbeaten on 19 with James Faulker for company at 4, hit the winning runs with a boundary.
At the beginning, Aaron Finch (31;15b 4x4 2x6) lost his wicket just when he was looking good. Coulter-Nile undid the world's second-best T20 batsman with a fast bouncer that the Aussie tried to pull, holing out to Manish Pandey at deep square leg.
Play was stopped for half an hour after a light drizzle, helping KKR stem the flow of runs just when Brendon McCullum was looking dangerous on 27 off 13 balls and his team on 62/1. Gujarat were ahead by 21 runs by Duckworth-Lewis method.
The big-hitting Kiwi fell to Woakes with Pandey snaffling it at sweeper cover.
Dinesh Karthik (3), Ishan Kishan (4) and Dwayne Smith (5) followed suit soon after, Coulter-Nile, Kuldeep Yadav and Umesh Yadav removing the trio.
Earlier, brilliant half century by Uthappa (72; 48b 8x4 2x6) and a quickfire 17-ball 42 (9x4, 1x6) by makeshift opener Sunil Narine helped KKR post 187/5.
For the visitors, skipper Raina was the pick of the bowlers conceding just 11 runs in his two overs and taking the crucial wicket of Narine, who eclipsed Sri Lanka batting great Sanath Jayasuriya's tally of 36 runs scored in boundaries when the dashing southpaw was playing for Mumbai Indians against Deccan Chargers.
Alongwith skipper Gautam Gambhir (33; 28b 2x4 1x6), he engineered a 45-run partnership, finding the fence every three balls taking Praveen Kumar, James Faulkner and Thampi to the cleaners.
Faulkner -- playing his first match for Gujarat this season -- suffered the most, going for three back-to-back fours in his last three deliveries as the allrounder, who was dropped from the Champions Trophy squad, went for 17 runs in his first over.
Courtesy the Narine blitzkrieg, the hosts were 65/1 after the powerplay.
Uthappa, in his new found No. 3 role, seamlessly blended with Gambhir to stitch together a 69-run stand for the second wicket as the men in purple tore their weak counterpart's bowling attack to shreds.
Jadeja missed a run out opportunity off Smith's bowling, throwing at the wrong end when Uthappa was halfway down the crease at the non-striker's end. Gambhir benefitted from the gaffe, bagging four overthrows.
The in-form home team skipper fell to Faulkner soon after with KKR well set for a big score at 114/2, top edging a good length delivery to Raina at midwicket.
Uthappa was finally taken by Praveen Kumar but the damage was already done.
Pandey (24; 21b 2x4 0x6) and Suryakumar Yadav (1) departed soon while Yusuf Pathan remained unbeaten on 11.