Tariq Fosu broke the deadlock for the U’s in the opening half, and though Sandro Semedo levelled things for the hosts, a quickfire double, one from Chris Porter and another for Macauley Bonne sealed the win for the visitors.
The O’s made three changes following the 3-0 defeat at Crewe Alexandra with Callum Kennedy, Paul McCallum and Jens Janse returning to the starting line-up.
The first chance of the game fell the way of the visitors when Tom Eastman, still forward from a corner which had been cleared, saw a shot blocked behind for a corner by Aron Pollock. From that set piece, a George Elokobi header was well held by Sargeant.
Chances were few and far between in the opening exchanges with the closest Orient came to break the deadlock was when Tristan Abrahams’ shot was dragged wide of Sam Walker’s goal.
Michael Clark gave away a free-kick to the left of the box, and Richard Brindley tried his luck, only to see if curl just over the bar with Sargeant at full stretch.
But he was beaten in the 26th minute when a ball in from the right found Tariq Fosu at the back post and he headed home at the back post after getting the better of Jens Janse in the air.
The game remained cagey though, with little between the two sides as Abrahams tried his luck from range with a curling effort from a Janse lay-back, only to see it curl just over the bar.
Orient ended the half on top and a lovely ball in from Kennedy found the head of Paul McCallum but Walker did well to save and then hold at the second attempt.
No changes were made at the break by either side and the second half was as equally as slow to take shape as the opening 45 minutes.
It was fair to say the game was lacking much in terms of quality, but that was until Sandro Semedo stepped up to the plate on 52 minutes.
The Portuguese winger picked the ball up about 35 yards out before running forward and firing an unstoppable effort into the top corner past the dive of Walker to send the home fans delirious, though Semedo was booked for taking his shirt off in the celebration which ensued.
Matt Briggs saw a fierce shot deflected behind for a corner by Janse as the game entered the final half an hour.
Some silky moves almost saw the visitors go back in fron on 62 minutes when the tight ball control from Fosu created another opening but he could only stab the finish into the hands of Sargeant.
But with 78 minutes on the clock Colchester were back in front when the trickery of Fosu worked wonders as he beat off the attention of several defenders before sliding the ball across for Chris Porter to tap in.
And they killed the game off two minutes later when Macauley Bonne was able to drive a low effort across goal into the bottom corner.
With six minutes of the game left a number of fans spilled out onto the pitch, forcing the game to take an extended break, and the remainder of the game was played behind close doors.
But there was no further goalmouth action and the O’s ended the home campaign with a 3-1 loss.
Orient will end their season with a trip to Blackpool next weekend.
LEYTON ORIENT: Sargeant, Parkes, Clark, Pollock; Kennedy, Collins (Moncur 84), Janse (Koroma 79), Alzate; Semedo, McCallum (Adeboyejo 67), Abrahams.
SUBS: Janata, Nnomo, Mezague, Koroma, Ochieng.
BOOKED: Collins (36), Parkes (69).
GOALS: Semedo (52)
COLCHESTER UNITED: Walker, Brindley, Eastman, Elokobi, Briggs (Bonne 70), Murray (Loft 74), Lapslie, Wynter, Fosu, Wright, Porter.
SUBS: Brill, Loft, Vincent-Young, Pyke, O’Sullivan, Kinsella.
BOOKED: Loft (76)
GOALS: Fosu (26), Porter (78), Bonne (80)
REFEREE: Carl Boyeson
ATTENDANCE: 6,854 (1,257 Colchester United fans)