The Bulldogs have celebrated Sam Perrett's 250th game in the NRL with a 24-20 win over his former club the Roosters at Allianz Stadium on Thursday night.
It wasn't as clinical as their dismantling of the Brisbane Broncos last weekend, but the Bulldogs did enough to register their third win in a row to move into the top four for the first time since the opening fortnight of the season.
Things looked good for the Tricolours early on in the contest with the Bondi club racing out to a 12-0 midway through the first half before the Dogs wrestled control to eventually claim two valuable competition points.
Bulldogs winger Brett Morris continued his incredible run of form since returning from a lengthy injury layoff adding two tries to the treble he collected five nights ago.
Roosters halfback Mitchell Pearce made a successful comeback from a calf complaint that had kept him out since Round 11, setting up two tries and playing a big part in their third.
The defeat means the three-time defending minor premiers must win all of their remaining fixtures if they want to play finals footy in 2016.
Things could get even worse for the Roosters with teen sensation Latrell Mitchell forced from the field late in the game with a leg injury.
It took just eight minutes for Pearce to inject himself in the game with the halfback setting up a high-flying Daniel Tupou with a pinpoint kick for the evening's first try.
The Roosters continued to set the early tone with a number of half-breaks and their territorial dominance was rewarded 10 minutes later with Sio Siua Taukeiaho converting a penalty goal to make it 6-0 a quarter of the way through the game.
It was all one-way traffic at that point and it got even worse for the blue and whites as Pearce again wreaked havoc; this time running a courage line before offloading in traffic to Mitchell who burnt Will Hopoate on the outside to cross for his ninth try of the season.
Down by 12, the Bulldogs turned to one of their best finishers to get them back in the contest, with Curtis Rona – playing on the right side of the field for the first time in 2016 – finishing off some terrific work by Josh Reynolds on his inside to score.
The Roosters' hot start was quickly forgotten as some twin magic from Josh Morris sent his brother Brett over for his fourth try in the space of five days to level the scores approaching half-time.
Canterbury could have gone into the sheds with a shock two-point lead but declined a penalty goal attempt of their own in the shadows of half-time before Pearce then missed a field goal attempt 30 seconds before the break.
The Roosters reclaimed the lead seven minutes after half-time through a Jackson Hastings penalty goal and could have been ahead by eight had Jake Friend held onto a hot pass from Pearce.
It would prove a costly error as the Bulldogs hit back through Blues workhorse Josh Jackson - despite some desperate defence from Aidan Guerra - to hit the front for the first time.
It's a lead they wouldn't surrender as the Morris brothers combined shortly after to send Brett over for his second of the evening despite suggestions he might have lost control as he struggled to ground the ball.
The Roosters should have narrowed the gap minutes later when Blake Ferguson touched down out wide, but the try was called back for a forward pass from Shaun Kenny-Dowall to undo all his hard work in the lead-up.
There was time for one final twist when Pearce and Dale Copley combined late in the game to send Tupou over for his second to set up a grandstand finish, but it wouldn't be enough as the Roosters fell short to suffer their 12 loss of the year.
Canterbury-Bankstown Bulldogs 24 (Brett Morris 2, Curtis Rona, Josh Jackson tries; Moses Mbye 4 goals) defeated Sydney Roosters 20 (Daniel Tupou 2, Latrell Mitchell tries; Sio Siua Taukeiaho 2, Jackson Hastings 2 goals) at Allianz Stadium. Half-time: 12-12. Crowd: 7,741.