Vineeth struck in the ninth minute of added time at the Jawaharlal Nehru Stadium.
Rafael Coelho provided FC Goa the lead in the ninth minute but the match took a dramatic turn early in second session when Goa captain Gregory Arnolin was sent off for handling the ball and Kerala Blasters won a penalty which Kervens Belfort converted to make it 1-1.
In the 80th minute, Goa were reduced to nine men when Richarlyson was sent off for a double booking and despite Goa's efforts to hold fort, Vineeth managed to register the winner in added time.
The first win for Kerala Blasters at home took them to fourth on the table with 12 points while leaving Goa at the bottom.
More From This Section
FC Goa chief coach Zico surprised many by using just five foreign players while leaving international players like Joffre Gonzalez and Trindade Goncalves on the bench. He continued with a strong defence that had three international players and appeared to be banking on them to shut out opposition. Kerala Blasters coach Steve Coppell made four changes, introducing goalkeeper Graham Stack, Pratik Chaudhuri, Mohammed Rafique and Michael Chopra.
Kerala Blasters had their own chances to find the equaliser, particularly in the 17th minute when Rafique's cross from the right was well measured but Belfort could not keep his header on target.
The match took a dramatic twist in the second session when it was just 30 seconds old. FC Goa captain Gregory Arnolin was adjudged to have handled a deflected ball inside the danger area and the referee not just awarded a penalty but also sent off Arnolin. Belfort made no mistake with the penalty.
With an additional player, Kerala Blasters enjoyed the advantage but could not surge ahead as Mohammed Rafi, Rafique and Josu Prieto all missed from close range.