MIAMI -- Dontrelle Willis bounced right back from his only loss of the year.
Roughed up in his previous outing, Willis pitched eight strong innings Monday night to become the first eight-game winner in the National League and lead the Florida Marlins past the Philadelphia Phillies 5-2.
Willis (8-1) allowed two runs and seven hits. The left-hander won his first seven starts before getting tagged in a 14-5 loss to the Dodgers last Tuesday.
"I didn't feel like I pitched that badly in the last game," said Willis, who spotted the Dodgers four runs in the first inning after allowing six earned runs in his previous 50.
"You can call it a rebound, but I called it looking forward to my next start. That game is long over. You can't erase the scoreboard. I tried to focus on the positives tonight, and that was the key," he said.
In nine starts, Willis has a 1.55 ERA, and he's 6-0 at home with a 0.96 ERA.
"He had a very good game. He maybe wasn't as sharp as he usually is, but he has that knack of coming back and doing the job," Florida manager Jack McKeon said.
Delgado and Cabrera each extended their hitting streaks to 12 games. Todd Jones worked the ninth for his seventh save in eight opportunities.
Jon Lieber (5-4) matched Willis pitch for pitch and carried a 1-0 lead into the sixth before serving up the home runs to Delgado and Cabrera.
The NL East-leading Marlins had a run taken away in that inning, when they put runners on first and second with one out. Paul Lo Duca hit a tapper not far from the plate, but was called out for running inside the baseline when Lieber's throw hit him in the back and deflected away.
But Florida was only temporarily kept off the scoreboard.
Delgado's three-run shot to right put the Marlins ahead 3-1, and Cabrera sent Lieber's next pitch over the wall in left to make it 4-1. It was the seventh home run of the year for Delgado, and the ninth for Cabrera.
Delgado finished 3-for-4, and Cabrera had two hits.
"Lo Duca was just trying to get on base and keep the inning going," Delgado said. "I tried to stay calm and just go up there and get a hit. I feel like I'm driving the ball better now in these last few games."
Willis, who struck out four and walked two, escaped trouble in the seventh by striking out pinch-hitter Jim Thome with runners on second and third.
The Phillies loaded the bases against Willis in the fourth with one out. David Bell's sacrifice fly scored Bobby Abreu for a 1-0 lead.
Lieber allowed four runs and six hits in six innings, dropping his third start in a row.
"It's all about making pitches. Obviously I haven't been doing that, and it's killing my teammates," Lieber said. "In this game, when you have two outs, you have to kill the inning, and I didn't do that tonight. I needed better command, better control in those spots."
Lo Duca argued after being called out, delaying the game for a couple minutes. Lieber, who likes to work fast, was in control to that point, but he quickly fell apart after that.
"That might have hurt him. It might have thrown his focus off," Phillies manager Charlie Manuel said. "After that, he just made some bad pitches, he kept the ball up over the plate."
The Marlins scored another run in the seventh off Terry Adams. Mike Lowell doubled and scored on Alex Gonzalez's ground-rule double to center for a 5-1 lead.
Philadelphia closed to 5-2 in the eighth on Abreu's RBI single.
- Marlins RHP A.J. Burnett will miss his scheduled start Thursday night against the New York Mets because of inflammation in his right elbow. Burnett felt discomfort after his last start and went to see Dr. James Andrews in Birmingham, Ala. "It was bothering me a bit, plus my velocity wasn't there," Burnett said. "I don't think it's a big deal, though."
- The game drew an announced crowd of 11,944, the low turnout partly a result of the Heat-Pistons NBA matchup in Game 1 of the Eastern Conference finals.
- The Phillies are 6-17 at Florida since the start of the 2003 season.
- Thome is 3-for-22 lifetime against Willis with 11 strikeouts.