MILWAUKEE -- Switch-hitter Alfredo Amezaga changed his mind before his final plate appearance: He wouldn't choke up on the bat despite a 2-for-29 slump against lefties.
"Everybody says I can't hit from the right side," he said. "But in a big situation is when it's pretty important."
Marlins manager Joe Girardi called it the biggest win all year after Joe Borowski (3-2) gave up Geoff Jenkins' tying two-run homer with two outs in the ninth. Taylor Tankersley pitched the 10th for his third save in five chances.
"They're very resilient. They have lots of character, lots of heart and lots of fight in them," Girardi said. "It tells you our guys believe."
Florida is 68-69 and trying to become the first team since 1899 to reach the .500 mark after falling 20 games below, according to the Elias Sports Bureau. The Marlins were 11-31 on May 21.
"I can't tell you how far it felt like in early May, but now it's right there," Willingham said. "That was a goal, once we started to get somewhat close. Now, it's right in front of us."
Borowski, who had his fifth blown save of the season, retired the first two in the ninth but Mike Rivera doubled and Jenkins hit a 1-2 pitch out to right to tie it at 6.
Willingham led off the 10th with a walk against Derrick Turnbow (4-9) and Jacobs singled to put runners on the corners with no outs. Shouse relieved and struck out pinch-hitter Cody Ross but Amezaga singled past diving second baseman Tony Graffanino to give Florida a 7-6 lead.
"It was so close," Shouse said. "Just a few inches and we're out of there. That's a bummer, a heartbreak."
Ramirez added a two-run single off reliever Dan Kolb before being thrown out trying to reach second to end the 10th.
"We can't get a break, it's a part of the game," Brewers manager Ned Yost said. "Sometimes you make your own breaks and we haven't done much of that either."
Ramirez also hit a leadoff homer in the eighth, and the Marlins scored two more runs off RBI singles by Willingham and Joe Borchard to go ahead 6-4.
The Brewers had built a 3-0 lead around Graffanino, who had an RBI triple in the third. He also scored on Bill Hall's RBI single in the first and Prince Fielder's groundout in the third.
Brewers starter Ben Sheets dominated the Marlins early, and Florida didn't have a hit until Willingham's single in the fourth. But Jacobs followed with his 18th homer of the year to cut the Brewers' lead to 3-2.
Rivera hit a solo homer in the fourth for Milwaukee, and Willingham added one of his own in the sixth.
Johnson, who defeated Sheets in his previous start five days ago, struggled to find the strike zone. Johnson was leading the majors in ERA coming into the start, but it rose to 2.99 after he allowed four runs. He now trails Cardinals starter Chris Carpenter (2.87) and Minnesota's Johan Santana (2.95) in his quest to be the first rookie since Detroit's Mark Fidrych in 1976 to lead the major leagues in ERA.
Johnson was finished after six innings, allowing six hits and three walks while striking out six. Sheets allowed four hits and struck out eight.
Milwaukee's nine-game skid is its longest since it lost 12 straight in 2004.
"You think you're about to break out of it and you turn around and it socks you right in the face," Sheets said.
- The 1899 Louisville Colonels were 16-38 before climbing back to reach .500. That team ended up two games below .500 for the season.
- Willingham and Jacobs combined to go 5-for-7 with four runs and four RBI.
- Marlins RHP Ricky Nolasco (11-9, 4.75 ERA) was scratched from Monday's start against Arizona with a sore right hamstring. RHP Brian Moehler (7-8, 6.04 ERA) will start in his place.
- The Brewers surpassed two million fans for the third consecutive season after their 14th sellout with 44,005 in attendance.