But the game ended in unsavoury scenes as England's Danny Rose was sent off after reacting angrily to alleged racist abuse.
Players then appeared to be pelted with missiles after Connor Wickham struck in injury time of the second leg to book England's trip to next summer's finals in Israel.
Supporters came onto the field, scuffles broke out and England's Rose was sent off after the final whistle. He reacted angrily by kicking away the ball and appeared to indicate he had been racially abused as he left the pitch.
Steve Wigley, one of the England coaching staff, also appeared to become caught up in the trouble as the players left the field.
The ugly scenes overshadowed another fine display of defensive resilience from England.
Stuart Pearce's men recorded a sixth clean sheet in seven outings to hold out the Serbs on a wet and windy night at the Mladost Stadium in Krusevac.
Marvin Sordell hit the post early on but, until Wickham came off the bench to stroke into an empty net late on, the game was largely about England's defensive effort.
Serbia had shown from the outset they intended to be more positive than they were in Norwich last week and, with Nikola Ninkovic coming into the side, they had a much greater cutting edge.
But it was England who had the first serious opportunity as Sordell hit the woodwork after nine minutes.
Captain Jordan Henderson found the Bolton forward with a superb through-ball but Sordell cracked his shot against the near post after neatly cutting inside Slobodan Medojevic to create space 12 yards out.
Serbia goalkeeper Branimir Aleksic looked uncertain throughout but escaped punishment after spilling a Henderson corner and was then fortunate to earn a free-kick as Craig Dawson jumped to reach a Wilfried Zaha free-kick.
The hosts showed their danger as Nemanja Kojic found space down the right and pulled the ball back for the livewire Ninkovic, who shot tamely at Jack Butland.
Luka Milivojevic flashed a volley wide after a Nemanja Gudelj throw-in was only partly cleared by Steven Caulker.
Serbia went closer as Henderson's headed clearance from Darko Lazovic's free-kick found its way to Ninkovic at the far post but his shot went across goal and wide.
Aleksic had another lucky escape as Dawson beat him to a Rose free-kick on the edge of the area but the England defender could not keep his header on target.
Lazovic found room on the edge of the England box but his attempt to curl a shot into the top corner was easily dealt with by Butland.
After a brief hold-up when one of several flares lit by Serbian fans found its way into Aleksic's goal area, the hosts continued to press as Ninkovic beat Adam Smith but fired wide from distance.
Further efforts came in from Kojic and Milivojevic as Serbia ended the first half on top but Butland was not tested.
England had a scare early in the second period as Kojic broke clear but Smith got back well to cut him off and was harshly booked for his trouble.
Ninkovic went close again after the ball fell to him outside the area but his swirling effort was well pushed put by Butland.
Ninkovic turned provider as he picked out Filip Malbasic with a fine ball but England were relieved to see the substitute flagged offside after Ognjen Mudrinski took a needless touch.
Thomas Ince broke clear as England mounted a rare attack but Zaha stumbled as he latched onto his cross and was bemused to be booked for diving.
Aleksic went forward as Serbia had a late chance from a free-kick but England broke away through Ince, who slid in Wickham, prompting the mayhem that followed.