A first-half strike from Dean Moxey was enough to beat promotion rivals Bradford and keep Exeter's promotion dreams on track.
Moxey gave the Grecians an early lead when his deflected cross looped over the head of the goalkeeper.
Bradford had their moments but there were few clear goalscoring opportunities at either end.
Steve Basham had the best early chance for the Grecians after he was picked by Moxey, but his lob from the edge of the box was well saved by Rhys Evans.
Bradford always looked capable of scoring and Steve Jones had a long-range shot comfortably saved as both sides attempted to assert themselves.
But it was the Grecians who took the lead in bizarre circumstances in the 21st minute when Moxey's attempted cross took a wicked deflection off Paul Arnison and looped over the stranded Evans.
The goal stunned Bradford and the Grecians grew in confidence. Liam Sercombe found Basham with a fine cross and the striker headed the ball narrowly over the bar.
The visitors searched for a way back into the game and Nicky Law went close with a shot from a tight angle.
After the break Matt Gill tried his luck from the edge of the box but the ball cleared the top of the bar.
At the other end Bradford continued to pose a threat and Law fired narrowly wide after hesitancy in the home defence.
Steve Jones then burst into the Exeter box and had a shot from a tight angle saved by the goalkeeper as Bradford pressed forward.
City substitute Richard Logan shot wide from 25 yards as Exeter attempted to kill off the game and Moxey struck the ball against the bar with a curling free-kick in injury time, but Exeter had done enough for a narrow victory.