With keeper Ryan Whitley unavailable, new signing Nathan Harker came in for his debut, but had a game to forget, as his mistakes led to both Witton goals, while at the other end Boro failed to unlock the visitors' resolute defence, much to the frustration of the subdued home crowd.
Boro actually made a lively start to the game, as James Cadman lifted an early shot just over the bar, then on eight minutes a Ryan Watson corner fell to Lewis Turner on the edge of the area, and his powerful strike was beaten away by the keeper.
That turned out to be the only real save visiting keeper Greg Hall had to make in the entire game, and it was Witton who created the next chance, when Tom Owens fed the ball to James Hooper, but his low shot was saved by the legs of Boro keeper Harker.
The remainder of the first half was rather uneventful, with neither keeper tested.
Bailey Gooda made a good interception to break up a promising Witton move, Nathan Cartman was fouled after racing past two defenders, but the free-kick came to nothing, then an Ash Jackson throw-in on the left, was headed into the goalmouth by Thornton, but was safely gathered by keeper Hall.
Witton opened the scoring on 37 minutes when Harker kicked a back-pass straight to Jawad Jebrin, and the pacy winger charged the ball down before firing into the empty net.
As in the previous game against South Shields, Boro manager Jono Greening made two half-time substitutions, but the visitors again capitalised on a defensive error to double their lead on 51 minutes, as a cross into the box from James Foley was fumbled by Harker, and fell to Hooper, who placed his shot into the net.
Soon after Gooda blocked a shot from Jebrin, as Witton enjoyed a brief spell of pressure.
Boro probably had 80% of possession in the last half-hour, but failed to create any real openings against the packed Witton defence.
Substitute Theo Hudson, on his debut, showed some good skills on the wing, and from one run, he laid off to Watson who had a strike deflected for a corner, then Watson also struck a shot against the top of the bar.
A Simon Heslop shot drifted well wide, and Turner lifted a shot just over as Boro continued to dominate possession.
Watson fired a 20-yard free kick straight at the keeper, Gooda headed inches past the post from a Watson corner and Hudson had a snap-shot easily held by the keeper, then the final half-chance saw Thornton head on to Coulson, whose shot was charged down, as Witton held on to claim the £2,250 prize money and a place in the next round.
BORO: Harker, Turner, Jackson (Hudson 46), Gooda, Thornton, Cogill, Heslop (Weledji 66), Watson, Cartman, Coulson, Cadman (Glynn 46)
MAN OF THE MATCH: Ryan Watson