Barry Robson made his first start for the Blades, the former Middlesbrough player being given a wide midfield berth.
Young Leeds striker Dom Poleon, signed on loan until the end of the season, had to be content with a place on the bench as Jamie Murphy partnered Dave Kitson up front after Jon Forte was ruled out with a muscle strain.
Robson blasted the Blades into an early lead from the penalty spot after he was tripped attempting to reach a low cross from Ryan Flynn.
Colchester were dangerous on the counter, particularly through Freddie Sears and both players had a player booked - Robson and Josh Thompson - as the challenges flew in
Robson crossed and Kitson headed home shortly before the break but was ruled offside.
Doyle also rattled the post from 20 yards in stoppage time after being teed up by Kevin McDonald.
Poleon replaced the tiring Robson in the 58th minute with Murphy going out wide.
The Blades finally made it 2-0 in the 73rd minute when McDonald pounced on a loose clearance, drove forward and fired a low drive inside Sam Walker’s right-hand post for his first goal of the season.
The second goal was enough to take the Blades above Tranmere Rovers on goal difference ahead of Saturday’s trip to leaders Bournemouth.
Kitson made it 3-0 deep into stoppage time from close range.
Blades boss Danny Wilson said: “Despite the scoreline we’ve actually played better but all credit to the lads.”
Sheff Utd: Long, McMahon, Maguire, Collins, Higginbotham, Flynn, McDonald, Doyle, Robson, Kitson, Murphy. Subs: Coyne, Westlake, Hill, Poleon, Ironside, McFadzean, De Girolamo.
Colchester: Walker, White, Okuonghae, Thompson, Garmston, Massey, David Wright, Clifford, Porter, Sears, Ibehre. Subs: Phillips, Morrison, Bond, Bean, Eastman, Drey Wright, Compton.
Referee: David Webb (County Durham)