Keen to consolidate their position of second in the Scottish Premier League, Caley Thistle threatened early as McKay got his head to a corner but the ball went comfortably over Kyle Letheren's crossbar.
Soon after, Andrew Shinnie thumped a 30-yard effort goal-ward and Letheren, deputising for the injured Cammy Bell, saved well high to his left.
However on 21 minutes the host's pressure paid off.
Down the left, Andrew Shinnie fed Doran who got the better of Killie's Ross Barbour and dinked the ball in for Ross to knock home from six yards.
It was Ross's third goal of the season and the hesitation in the visitors' defence certainly helped him get it.
On the half hour mark, Inverness looked to double their lead as Graeme Shinnie flighted in a good cross for his brother Andrew, but the playmaker could not keep his volley down.
Doran then had another opportunity for the Highlanders as half-time approached, cutting inside and shooting to force Letheren into an unconvincing save wide.
Kilmarnock, as an attacking force, had been a non-event in the first-half and that theme continued at the beginning of the second.
Ross's shot was deflected wide then minutes later an Andrew Shinnie curler went just the wrong side of Letheren's post.
Killie then almost hit self-destruct as Mo Sissoko lost out to McKay and then barged the Northern Irishman in the box.
Interview - Kilmarnock boss Kenny Shiels
Terry Butcher's men screamed for what seemed a certain penalty but referee Bobby Madden said no.
With 15 minutes remaining, the Shinnie brothers combined again, this time Andrew setting up Graeme to flash a shot across goal and wide.
Graeme Shinnie should have finished it off as he went clean through five minutes later, but Letheren saved excellently to keep his side hopeful of a point.
And, in the dying minutes, Kilmarnock did indeed steal that point in their only meaningful attack of the game.
Dayton finally provided some forward flair and the ball was pulled back for Perez to stroke home from close range, meaning Killie move to sixth in the SPL.
Full Time The referee blows for the end of the match.
Rory McKenzie fouled by Billy McKay, the ref awards a free kick. Danny Racchi crosses the ball in from the free kick, save by Ryan Esson.
David Raven fouled by Rory McKenzie, the ref awards a free kick. Free kick taken by David Raven.
The assist for the goal came from James Dayton.
89:07 Goal scored
Goal! - Borja Perez - Inverness 1 - 1 Kilmarnock Goal scored by Borja Perez from inside the penalty box to the bottom right corner of the goal. Inverness CT 1-1 Kilmarnock.
Free kick awarded for an unfair challenge on Billy McKay by Manuel Pascali. Graeme Shinnie takes the free kick.
Substitution Shane Sutherland is brought on as a substitute for Aaron Doran.
Substitution Daniel Devine comes on in place of Andrew Shinnie.
Foul by James Dayton on David Raven, free kick awarded.
Andrew Shinnie takes a shot. Mohamadou Sissoko gets a block in.
Danny Racchi challenges Ross Draper unfairly and gives away a free kick. Josh Meekings takes the free kick.
Graeme Shinnie takes a shot. Save made by Kyle Letheren. Corner taken by Graeme Shinnie from the right by-line played to the near post, Close range headed effort by Gary Warren misses to the right of the target.
Substitution Mark O'Hara leaves the field to be replaced by Rory McKenzie.
Graeme Shinnie produces a left-footed shot from close range which goes wide of the right-hand upright.
Foul by Ross Draper on Mohamadou Sissoko, free kick awarded. Mark O'Hara takes the free kick.
Mohamadou Sissoko fouled by Andrew Shinnie, the ref awards a free kick. Kyle Letheren takes the free kick.
Unfair challenge on David Raven by Danny Racchi results in a free kick. David Raven restarts play with the free kick.
Danny Racchi concedes a free kick for a foul on Aaron Doran. Aaron Doran takes the direct free kick.
Billy McKay fouled by Jeroen Tesselaar, the ref awards a free kick. Free kick taken by Billy McKay.
The offside flag is raised against Andrew Shinnie. Free kick taken by Mohamadou Sissoko.
Substitution Sammy Clingan leaves the field to be replaced by Borja Perez.
Corner taken by James Dayton from the left by-line played to the near post, Josh Meekings makes a clearance. Corner taken by James Dayton played to the near post, Graeme Shinnie makes a clearance.
Substitution Garry Hay goes off and Danny Racchi comes on.
Free kick awarded for an unfair challenge on William Gros by Graeme Shinnie. The free kick is delivered right-footed by Sammy Clingan from right wing.
Billy McKay is caught offside. Free kick taken by Manuel Pascali.
Ross Draper challenges Mohamadou Sissoko unfairly and gives away a free kick. Direct free kick taken by Sammy Clingan.
Corner taken by Graeme Shinnie, save by Kyle Letheren. Shot from deep inside the area by Graeme Shinnie goes over the bar.
Foul by Manuel Pascali on Andrew Shinnie, free kick awarded. The ball is swung over by Graeme Shinnie, Gary Warren takes a shot. Kyle Letheren makes a save. Inswinging corner taken by Graeme Shinnie, Header from close in by Gary Warren misses to the left of the target.
Free kick awarded for a foul by Billy McKay on Mohamadou Sissoko. Free kick taken by Kyle Letheren.
Mark O'Hara concedes a free kick for a foul on Aaron Doran. Free kick taken by Graeme Shinnie. Aaron Doran takes a corner.
Garry Hay fouled by David Raven, the ref awards a free kick. Jeroen Tesselaar restarts play with the free kick.
The referee blows his whistle to start the second half.
45:00 +0:01 Half time
Half Time The first half comes to an end.
Aaron Doran takes a shot. Save by Kyle Letheren. Aaron Doran decides to take the corner short.
Effort on goal by Andrew Shinnie from deep inside the area goes harmlessly over the bar.
Graeme Shinnie takes the inswinging corner, clearance made by Manuel Pascali.
Free kick awarded for an unfair challenge on Billy McKay by Mohamadou Sissoko. Graeme Shinnie takes the free kick.
Sammy Clingan fires a strike on goal direct from the free kick.
Booking The referee cautions Gary Warren for unsporting behaviour.
Gary Warren gives away a free kick for an unfair challenge on Mark O'Hara.
Foul by Gary Warren on James Dayton, free kick awarded. Free kick taken by Garry Hay.
Corner taken by James Dayton, clearance made by David Raven.
Billy McKay takes a shot. Save by Kyle Letheren.
Andrew Shinnie gives away a free kick for an unfair challenge on James Dayton. Free kick taken by Jeroen Tesselaar.
Assist by Aaron Doran.
20:49 Goal scored
Goal! - Nick Ross - Inverness 1 - 0 Kilmarnock Nick Ross fires in a goal from close range low into the middle of the goal. Inverness CT 1-0 Kilmarnock.
James Dayton takes a outswinging corner from the left by-line played to the near post, Graeme Shinnie manages to make a clearance.
Unfair challenge on Billy McKay by Mohamadou Sissoko results in a free kick. Direct free kick taken by Aaron Doran.
The official flags Billy McKay offside. Mohamadou Sissoko takes the free kick.
Corner taken by Graeme Shinnie played to the near post, clearance by Ross Barbour.
Inswinging corner taken right-footed by Aaron Doran from the left by-line to the near post, clearance made by Mohamadou Sissoko.
Andrew Shinnie takes a shot. Save made by Kyle Letheren.
Corner taken left-footed by Graeme Shinnie, Close range header by Billy McKay goes over the bar.
This page is best viewed in an up-to-date web browser with style sheets (CSS) enabled. While you will be able to view the content of this page in your current browser, you will not be able to get the full visual experience. Please consider upgrading your browser software or enabling style sheets (CSS) if you are able to do so.