Essex were set 329 to win after Sussex were bowled out for 288 in the morning as Jamie Porter finished with 5-82.
Cook, who was dropped on one by Danny Briggs, remained vigilant after the visitors fell to 128-4 and lost regular wickets throughout the afternoon as the seamers ran though the top order.
The 31-year-old finished on 127 not out as Essex closed on 266-7.
It was the England opener's second successive hundred in his opening two County Championship matches, having been made available for Essex's first four Division Two games.
Cook's 103-run fifth-wicket partnership with Jesse Ryder had briefly given Essex hope of victory, with 95 needed from a minimum of 16 overs, before Ryder was bowled by Luke Wells.
The Sussex leg-spinner then had skipper Ryan ten Doeschate caught at deep cover and Ajmal Shahzad trapped James Foster lbw as the match swung back in the hosts' favour with Essex needing to bat out 10 overs with three wickets remaining.
However, Cook and Graham Napier (six not out) survived the new ball as Essex remained unbeaten following their win over Gloucestershire last week.
England Test captain Alastair Cook hit an unbeaten century as Essex held on to secure a draw against Sussex at Hove.