With just one lap remaining, Fabrizio led with Rea and Haga in close company. Getting a good slipstream down the home straight, Rea tucked beneath Fabrizio before backing the bike up the inside and holding his line into the ensuing left-hander. While Fabrizio attempted to respond over the remaining corners, Rea was able to hold him off to cross the line for a famous first win.
Joining Spies, Haga and Fabrizio on the winner's list this season, victory also marks a first for Honda since Ryuichi Kiyonari's triumph at Donington Park last season.
Although disheartened to miss out on victory, second still marks Fabrizio's eighth consecutive podium finish to keep him in the hunt for overall honours.
Haga, meanwhile, crossed the line just behind to finish third, ending a day in which he'll be satisfied, rather than happy, with his results having been out paced by his team-mate throughout the weekend.
Nonetheless, with Spies only able to claw his way back to ninth position, the American was only able to reduce his gap to Haga by five points overall. The margin now stands at 48 points, with the ever-present Fabrizio just seven points further back now.
Although not quite the podium he was targeting from pole position, two fourth place finishes marks Jakub Smrz's best weekend at WSBK level. The Czech rider had slipped to seventh at one stage after a mistake on lap eight, but overtook Shane Byrne and Carlos Checa in the latter stages to for another good haul of points.
Checa finished a solid fifth on the second Ten Kate Honda, with race one podium winner Byrne completing a strong weekend for himself and the Sterilgarda Ducati team in sixth.
Tom Sykes and Leon Haslam made it four British riders inside the top eight in seventh and eighth, with Spies and Max Biaggi rounding out the top ten, the latter enduring a difficult weekend on the Aprilia.
Elsewhere, Suzuki pair Yukio Kagayama and Fonsi Nieto kept their points ticking over in 11th and 12th, ahead of Shinya Nakano, Ryuichi Kiyonari and Gregorio Lavilla.
Attention now turns to the next round, to be held next on British shores at Donington Park.