The opening goal came just after the hour mark. Elliott was brought down out wide, and from Stuart Green's free kick he rose to head past Miller and give City the lead.
He got a second just minutes later. He controlled Damien Delaney's ball over the top with his head, then finished cooly to make it 2-0.
But a lack of concentration saw Exeter reduce the lead back to 1 a minute later. Paul Musselwhite parried substitute Scott Partridge's shot, and then he put the rebound into the open goal.
Daniel Webb - making his full debut - saw a first time shot go just wide, while John Anderson had a header saved from close range. Steve Melton also carved a chance after dribbling the ball through, but shot wide.
But Exeter were still in it, and Graeme Power's long-range effort was just kept out by Musselwhite.
It looked like City would comfortably take all 3 points when Exeter had a man sent off in the 90th minute. Lawrie Dudfield was brought down on the edge of the area, and Power was adjudged to have been the last man, so the referee controversially showed him the red card.
But the 10-men Grecians fought back, and after Musselwhite failed to claim a deep free kick into the box, Steve Flack put the ball in the net to steal a point.
City line-up (4-4-2): Musselwhite; Regan, Anderson, Delaney, Holt; Green, Melton, Ashbee, Elliott (Dudfield 87); Alexander (Williams 70), Webb.
Un-used subs: Deeney, Smith, Jevons.