Rangers eventually ran out comfortable winners and went back to top of the league thanks to second half strikes from Neil McCann, Michael Mols and Shota Arveladze.
The home side were slow to start but McCann, one of four changes from the previous Saturday, curled in a superb cross to the back post which Fernando Ricksen headed into the side netting.
Dunfermline threatened briefly, but Craig Brewster's cross was touched away by Craig Moore with Stevie Crawford poised to shoot.
The home attack was finding it hard to find space against a mass Dunfermline defence and when Mols did find Arveladze he slipped at the crucial moment.
Rangers were reduced to long-range efforts, none of which tested Derek Stillie in the Dunfermline goal.
Early in the second half Mols turned well after a surging run by Moore but shot over, before Ricksen diverted an Arthur Numan shot into the net but was narrowly offside.
The breakthrough for the home side was not long delayed. McCann picked up a quick corner by Mikel Arteta and curled in his shot off the far post, with keeper Stillie helpless.
Then Pars substitute Sean Kilgannon, who had only been on the park for five minutes, was ordered off for a wild swipe at Kevin Muscat who was booked for his part in the incident.
Despite numerical advantage Rangers still found it difficult to create chances and at the other end if Crawford had not seen his cross blocked by Muscat Dunfermline might well have equalised as Brewster and Thomson were unmarked.
Arveladze was pulled back for offside when he headed home a Ricksen cross but Rangers finally got the goals they were seeking.
From Muscat's pass Mols turned Gus MacPherson inside out before sliding his shot home.
Then Arveladze wrapped up the points with a well-taken goal. Arteta advanced from the halfway line before finding Mols whose first time pass was side-footed home by the Georgian.
There was still time for Arteta to hit the post with a tremendous shot before the final whistle