Just 19 seconds after being booked for a foul on Aguero, Fellaini pushed his head into the City striker following another clash and was shown a straight red card by referee Martin Atkinson in the 84th minute.
United – without injured top scorer Zlatan Ibrahimovic – had produced the sort of defensive, pragmatic performance that is manager Jose Mourinho's specialty, and they stayed solid for the closing minutes to extend their unbeaten run to 24 matches – their longest such streak in a single top-flight season.
Yet it is a result that does little to boost either side's hopes of finishing in the top four and securing a place in next season's Champions League, with City remaining one point and one position clear of fifth-placed United.
Pep Guardiola's team were the dominant force throughout and should have taken the lead as early as the ninth minute, but the clinical instinct that has seen Sergio Aguero net in each of his last six outings deserted him as he struck the upright from close range.
Ander Herrera - joined in midfield by Michael Carrick due to Paul Pogba's injury-enforced absence - spurned United's best opportunity of the match when he evaded his marker to meet a free-kick at the back post but somehow failed to steer his header on target.
Mourinho's side failed to maintain their counter-attacking threat in the second half and City were unable to unlock the stoic United defence - the loss of David Silva to injury in Sunday's FA Cup semi-final defeat proving influential.
Claudio Bravo, who endured a horror debut at Old Trafford last September, was a spectator for much of the second half and went off on a stretcher with a left calf injury in the 79th minute - the first of a series of dramatic closing events.
After Fellaini's dismissal, substitute Gabriel Jesus thought he had marked his first appearance since February 13 with a stoppage-time winner, only to turn and see the offside flag correctly raised.
24 - Manchester United have equalled their record for the longest unbeaten run within a single top-flight season (24 games). Grind. pic.twitter.com/xcYhBHGNsM— OptaJoe (@OptaJoe) April 27, 2017
Mourinho opted for Marcus Rashford to lead the line and left captain Wayne Rooney – the highest-scoring player in the history of this fixture – on the bench, with the young striker stretching the City defence and setting up Herrera for a teasing cross inside just two minutes, Pablo Zabaleta turning to clear.
City had a chance to move ahead seven minutes later but Aguero could only divert Kevin De Bruyne's low cross onto the outside of the upright from inside the six-yard box.
Bravo almost gifted United a goal when he needlessly palmed Anthony Martial's deflected, looping cross towards the penalty spot, before recovering to block Henrikh Mkhitaryan's subsequent driven effort.
While Bravo looked fallible at one end, David de Gea proved impeccable at the other with a brilliant diving save to deny Aguero's curling 25-yard strike before getting down to his right to keep out a low drive from Aleksandar Kolarov.
Fernandinho's impetuous tackle on Herrera provided the main flashpoint of the first half, but the Spain international will have gone into half-time wondering how he failed to find the target with a free header at the back post from Rashford's left-wing free-kick.
City remained on top in the second half but De Bruyne and Aguero were unable to hit the target with efforts from outside the box before the hour mark, United struggling to get out of their own half.
Guardiola's men continued to push and had to replace the injured Bravo with Willy Caballero 11 minutes from time when he was forced into a rare moment of second-half action.
Fellaini's moment of madness handed City a boost in their quest for a late equaliser, but Jesus' tap-in from a cross by Aguero – who volleyed wide at the death – was correctly ruled out as the spoils were shared.
Despite failing to open up a four-point gap on their fifth-placed opponents, City will feel more confident of securing a return to European football's top table next season due to a comparatively easier run-in.
Key Opta stats:
- There were just 19 seconds between Marouane Fellaini’s first and second cards in this match for Manchester United.
- Seven of the eight red cards given in this Premier League fixture have been for Manchester United players.
- Sergio Aguero attempted nine shots in this match; the last player to attempt more in a competitive game against the Red Devils was Cristiano Ronaldo (11) for Real Madrid in a Champions League match back in March 2013.
- This equals the most shots that Aguero has attempted in a Premier League game without scoring (9) – level with his appearance versus West Brom in March 2015.
- The two occasions that Manchester United have allowed their opponents the most shots in a Premier League game this season have both been against Man City (18 at Old Trafford and 19 tonight).
- Manchester City have now failed to score in four of their last five Manchester derbies in all competitions.