The fight for third spot goes on after a bad-tempered match at Rugby Park.
Gary McSwegan was desperate to show his stuff after his miserable spell at Hearts, but his enthusiasm almost got him sent off as he got involved in nasty exchanges with Andy Webster and Phil Stamp.
When he concentrated on the game, he was more effective, and should have given Killie the lead in the 15th minute after Andy McLaren's clever flick sent him charging into the box, but Tepi Moilanen got down quickly to parry his shot past.
His goal was only delayed, however. The striker was on hand to finish a great move which he had helped to create as his one-two set up Steve Fulton's crossfield pass which released McLaren, who beat his man and delivered a deep cross which McSwegan nodded into the far corner of the net for his 11th goal of the season.
McLaren should have scored Killie's second within a minute of the re-start when Garry Hay did superbly to find him alone inside the box, but only McLaren will know how he missed the target from five yards.
Hearts substitute Steven Boyack almost equalised with his first touch but Gordon Marshall blocked with his legs. The keeper produced an even better save to deny the sub in the 70th minute when he got down to finger-tip the ball to safety.
Hearts were reduced to ten men in the78th minute when Webster saw his second yellow card and their chances were ended two minutes from time when Austin McCann joined him in the dressing room following an off-the-ball incident.