Mumbai have 16 points from 13 outings and have a game left on Sunday against Kolkata Knight Riders, while Sunrisers Hyderabad are placed fourth with 12 points.
Hyderabad needed 17 runs off the last over and the equation was brought down to seven by the time Hardik braced up to bowl the final delivery.
But Manish Pandey (71 not out off 47 balls) carted the all-rounder over long-on for a six to bring the scores level and force a Super Over, a first at the Wankhede Stadium.
Chasing 163, Hyderabad needed 41 runs from 18 balls, but Malinga (0-37) conceded 12 runs as the equation was brought down to 29 runs off 12 balls.
Then Bumrah (2-31) gave 12 runs in the penultimate over, with Manish Pandey hitting two fours.
Earlier, Quinton De Kock’s unbeaten 69 took the hosts to a respectable total on a difficult pitch.
For the visitors, the chase began with Wriddiman Saha (25 off 15 balls) and Martin Guptill (15 off 11) adding 40 for the first wicket. But Saha was sent back by Bumrah.
Bumrah struck for the second time as he trapped Guptill in front of the wicket in the sixth over.
Left-arm spinner Krunal Pandya (2-22) struck early as he trapped Kane Williamson (3) in the eighth over, a decision which went in Mumbai’s favour after a successful review. The visitors were in a spot of bother at 65-3.
Then Pandey and Vijay Shankar (12 off 17 balls) tried to rally the innings with a 33-run stand, but Krunal struck again in the 14th over, sending Shankar back.
Hardik struck in the first over when Abhishek Sharma edged to keeper De Kock, after which Hyderabad were almost out of the contest. But Mohammed Nabi (31 off 20 balls) and Pandey brought the visitors back.
Sunrisers Hyderabad bowlers dished out a clinical performance to restrict Mumbai Indians to 162 for five.
The Sunrisers, led by pacer Khaleel Ahmed (3-42), pegged Mumbai back after Rohit Sharma decided to bat. He was ably supported by the Afghan spin duo of Rashid Khan (0-21), Mohammed Nabi (1-24) and Bhuvaneshwar Kumar (1-29), while Basil Thampi (0-40) had an off day.
A late cameo from Krunal Pandya (9 not out off 3 balls) ensured Mumbai at least crossed the 160-run mark.
(With PTI inputs)