Niranjan, the son of NCP heavyweight from Thane district and Deputy Chairman of Legislative Council Vasant Davkhare, got 27,733 votes, against Kelkar's 22,092.
The election had taken place on July 2.
Niranjan had the support of Congress and RPI (Gavai group).
State NCP president Madhukar Pichad said Konkan graduates seat had been wrested away from BJP after 40 years. He thanked Congress and RPI (Gavai) for their support.
With the win, NCP's tally in the 78-member Council has increased to 26.
The Sharad Pawar-led party was already the single largest group in the upper house.
Meanwhile, Shiv Sena's Deepak Sawant retained his Mumbai graduates seat by a whopping margin of 13,549 votes. Sawant got 14,042 votes, whereas his nearest rival Rajesh Teke, supported by Congress-NCP, polled mere 493.
Sitting MLC Kapil Patil, backed by Congress and NCP, won by a margin of 8,220 votes in Mumbai teachers constituency. Patil got 9,749 votes while nearest rival, independent candidate Balasaheb Mhatre, got 1529 votes, Konkan Division Commissioner Vijay Nahata said.
Counting for the Nashik teachers constituency was still on, and independent candidate Apurva Hirey, the son of former state minister Prashant Hirey, was said to have taken a comfortable lead.