Second keeps Haslam ahead
Max Biaggi won both races on his Alitalia Aprilia ahead of Haslam but the Derbyshire-born rider now holds a 16-point lead over the Italian at the top of the standings.
This year's championship is being contested by seven British riders this season and they all enjoyed productive weekends at the undulating and fast Portimao circuit.
Advertisement
Hide AdAdvertisement
Hide AdCal Crutchlow started from pole but made a sluggish start to race one with fellow Briton Haslam soon taking to the front of the field.
Biaggi soon found his way past to lead but the veteran made a mistake on lap seven, running wide on the brakes to allow Haslam to power back past.
Haslam won his first World Superbike race in Australia at the end of February but 38-year-old Biaggi has won 42 Grands Prix and the Italian showed his experience to edge back ahead with six laps left and hold off a determined fight from the Alstare Suzuki rider to take the race win by 0.2 seconds.
Crutchlow was running in third place when he crashed out with three laps remaining, but remounted to finish 14th on his Sterilgarda Yamaha.
Advertisement
Hide AdAdvertisement
Hide AdJonathan Rea was third, with Spaniard Carlos Checa fourth and Biaggi's team-mate and reigning British Superbike Champion Leon Camier in fifth place.
Shane Byrne was sixth, Yorkshire's double WSB champion James Toseland was seventh and Tom Sykes was the final British rider in 15th place.
Biaggi and Haslam were again in battle throughout race two with Crutchlow and Checa making a top group of four who broke away from the rest.
Haslam twice found a way past Biaggi and the Italian made an error with five laps left which allowed Haslam to open up a half a second gap.
Advertisement
Hide AdAdvertisement
Hide AdBut the straight-line speed of Biaggi's Aprilia saw him retake the lead on the penultimate lap and he held on for a second win.
Crutchlow was third, Checa fourth and Camier fifth.
Rea was forced to retire as his Honda blew up on the home straight of lap eight but of the remaining Britons, Toseland was sixth, Byrne seventh and Sykes 13th.
The next round will be held in Valencia on April 11.