They squandered an electrifying start from openers Michael Hussey and Lendl Simmons, losing their last eight wickets for 33 runs before being dismissed for 173 runs in 19.3 overs, but did well to restrict Delhi to just 158.
Delhi’s total was built around gutsy knocks from J P Duminy (45 not out) and Manoj Towary (41), while skipper Kevin Pietersen (44) got a good start but was dismissed playing one of the worst shots of the tournament off Harbhajan Singh's bowling.
Mumbai’s sixth victory from 13 games took their points tally to 12, the same as Sunrisers Hyderabad.
They have a game in hand, against Rajasthan Royals on May 25.
The Daredevils began the run-chase promisingly, Pietersen (44 off 31 balls) leading the way in his inimitable style as he put on 43 runs for the opening wicket with a subdued Murali Vijay.
But after the openers departed and 'Million Dollar Flop' Dinesh Karthik fell cheaply, it was left to Duminy (45 not out in 29 balls), their leading run-getter and Tiwary (41 off 31 balls) to revive the innings in a partnership of 85 from 54 balls.
However, the target was a bit too much and Daredevils suffered their eighth straight defeat and 11th in 13 games.
Pietersen looked dangerous during his time at the crease, hitting six fours and a six over the straight field off Bumrah. But the switch-hit, which he is adept at, led to his downfall as Harbhajan came around the wicket and bowled him.
Daredevils, 59 for two when Pietersen departed, lost wicketkeeper Dinesh Karthik two runs later to a poor shot. He tried to make room to play Marchant de Lange to the leg side, missed the ball and was castled.
From 43 for no loss after five overs, Delhi, last on the eight-team table, slipped to 61 for 3 by the tenth over and the task of overtaking Mumbai’s 173 appeared a formidable one, especially against the triple spin attack of the home team.
Earlier, Mumbai Indians, well-placed at 140 for 2 in 14.1 overs, lost wickets in a heap. Hussey's 56 off 33 balls and last match's hero Simmons's 25-ball-35 were the only significant contributions.
Hussey's innings was laced with two sixes and seven fours. He put on 87 for the opening wicket in eight overs with Simmons. However, Mumbai were unable to take full advantage of the electrifying start as Imran Tahir (3-37 in four overs) and Jaydev Unadkat (2-24 in two) checked them even as three batsmen were run-out.
Skipper Rohit Sharma scored 30, inclusive of four fours from 21 balls, before his dismissal to an ill-advised cut shot triggered the collapse.
Mumbai started in blazing fashion thanks to Hussey's aggression after they were put in to bat by rival captain Kevin Pietersen.
Hussey, with just one 50-plus score as his best effort this season, tore into the rival bowling attack with pulls and bottom-handed shots before he was run-out.
The retired Australian left-hander raced to 41 off just 20 balls in the first powerplay period of six overs. It was studded with seven fours and a straight lofted six off left arm slow bowler Shabaz Nadeem. His all-out attack saw Mumbai amass 65 for no loss during this productive phase.
Simmons, who came into the game after hitting the lone century (100 not out) of the tournament thus far against Kings XI Punjab, played second fiddle but then opened up a bit to score 35 when he holed out to deep extra cover off leg spinner Tahir.
Hussey fell for 56 for the second time in the season, run-out by a throw from point to wicketkeeper Dinesh Karthik, who whipped out the bails just in time to catch the batsman short of crease and leave Mumbai at 120 for 2 with eight overs left.
Image: Mike Hussey during his knock against Delhi Daredevils at the Wankhede stadium in Mumbai.
Photograph: BCCI
Do-or-die for Mumbai; can the champs overcome Delhi?
Cricket Buzz: Mumbai replace injured Praveen Kumar with Ojha after toss
IPL PHOTOS: Hussey anchors Mumbai Indians innings
Stats: Michael Hussey continues to enjoy excellent record
Stats: Sandeep Sharma is milestone man in IPL