Colchester went ahead in the 20th minute through Gavin Massey, who headed past goalkeeper Jamie Jones after substitute Bradley Garmston had brilliantly picked him out in the penalty area.
The U's doubled their lead four minutes later when Drey Wright finished another good attacking move, after Clinton Morrison had helped Brian Wilson's low cross into his path.
But Kevin Lisbie finished coolly against his former club after breaching the U's offside trap eight minutes before the break to get Orient back in the game.
Leon McSweeney went close for the visitors just before half-time, while former Orient striker Jabo Ibehre wasted a great chance to give Colchester a 3-1 lead after shooting wide just before the hour.
U's keeper Sam Walker crucially saved Lisbie's penalty with 12 minutes to go after substitute Shaun Batt had been tripped in the area by Garmston, to seal a priceless win for Colchester.