The hosts held sway for much of the match, but were punished for two defensive lapses, and Ipswich's only reply came with just a minute to go.
Kevin Kyle fired wide for Sunderland early on, while Jim Magilton and Shefki Kuqi sent efforts off target for Town.
Mart Poom saved a deflected Jim Magilton drive, then Kelvin Davis saved a Tommy Smith 20-yard effort.
John McGreal pulled off a superb block to foil Jeff Whitley, while the same attack ended with Kyle crossing for Julio Arca to head narrowly wide.
Ian Westlake crossed fractionally too high for an unmarked Pablo Counago, before Westlake fired a volley off target and a first-time shot over.
Sunderland went ahead just before the break, Darren Williams beating Matt Richards' weak challenge to win the ball and his cross was stroked home by Smith.
Town pummelled the visitors after the break, with Counago firing the best effort over in the 46th minute.
Poom made a sensational save on 61 minutes to palm away a towering Kuqi header, with Arca clearing off the line before the keeper pounced on the loose ball.
Poom then denied Kuqi's powerful volley before Sunderland were gifted a second goal when Davis dropped a harmless Jason McAteer free kick leaving Arca a tap in.
Sunderland should have had McAteer sent off late on after he kicked out at Martijn Reuser but the referee showed only a yellow card.
Town gave themselves a chance a minute from time when Reuser finished well after a neat move involving Counago and Magilton but Sunderland held on to win a place in the last 16 of the competition.
Man of the match: Jeff Whitley - He was behind most of Sunderland's good forward moves in the first half and was in the thick of the tackles in the second half during their backs to the wall effort.