The wily Trinidadian finished with four for 22 off four outstanding overs as Royal Challengers were restricted to 115 for nine, after being put in on a slow pitch at the JSCA International Stadium Complex.
Gayle gathered a patient 33 from 36 balls to top score, while South Africa star AB de Villiers hit 28 from 22 balls.
Royal Challengers reached 70 for two in the fourth over before Narine ripped apart the innings, claiming Gayle stumped off the first ball of his second over.
Narine’s victims included fellow Trinidad and Tobago and West Indies teammate Ravi Rampaul who he trapped lbw without scoring in the penultimate over.
In reply, South Africa’s Jacques Kallis top scored with 41 to steer the defending champions to victory.
Pacer Rampaul finished with one for 17 from four tight overs.
Kolkata are sixth in the table on 12 points while RCB slipped to fourth on 16 points.
In Jaipur, Trinidad and Tobago’s Kevon Cooper and the Rajasthan Royals upset fellow countryman Dwayne Bravo’s table topping Chennai Super Kings by five wickets, to go second in the standings.
Sent in, Chennai tallied 141 for four, getting 55 from opener Murali Vijay and 40 from partner Mike Hussey, in an opening stand of 83 off 69 balls, before Bravo chipped in with a breezy unbeaten 23 from 11 balls at the end,
Seamer Cooper finished with two for 32 from his four overs.
In reply, the Royals reached their target in the 18th over despite a top spell from Barbados and West Indies fast bowler Jason Holder who picked up two for 20 from four outstanding overs.
Bravo, the new West Indies one-day captain, sent down three expensive overs that cost 35 runs and yielded one wicket.
Royals were languishing at 19 for three in the fourth over and then 45 for four in the tenth before Australia’s Shane Watson arrived to play a blinder, stroking 70 from 34 balls with six sixes and six fours in a 93-run, fifth wicket stand with Roger Binny (41).