Needing 232 to win, Hyderabad were dismissed for 201 on the final day as Nayar and left-arm spinner Vijay Gohil (5/64) doing the damage.
Top-order batsman Balachander Aniruddh's dogged unbeaten 84 off 187 balls with four boundaries and two sixes was not enough with senior-most pro Nayar's 5 for 40 enabling the title favourites to survive a scare despite being in the pole position going into the final day.
Starting the day at 121 for 7 needing another 111 runs to win, Hyderabad with their No 3 Aniruddh at crease fought well with Chama Milind (29) adding 64 runs for the eighth wicket with Aniruddh.
While Mumbai needed three good deliveries, a score of 185 for 7 was a biot worrying before Nayar bowled his military medium stuff.
More From This Section
The man with the 'Golden arm for Mumbai' and the most ungainly action first got Milind to edge one to Adirya Tare and within two balls trapped Mohammed Siraj leg before.
Brief Scores: Mumbai 294 and 217.
Hyderabad 280 and (Target 232) 201 in 71 overs (B Aniruddh 84 no, Abhishek Nayar 5/40, Vijay Gohil 5/64).
Mumbai won by 30 runs.