But when Phillies center fielder Doug Glanville misplayed Michael Barrett's short fly ball leading off the ninth inning, turning it into a double when he broke the wrong way, Milton lost his no-hit bid and eventually blew his lead.
Enter LaTroy Hawkins, who rescued Glanville from a lifetime of booing in Philadelphia.
"Leadoff walks, especially late in the game, always come back to haunt you," Cubs manager Dusty Baker said.
Milton issued a leadoff walk to Mark Grudzielanek in the first, watched him run himself into a double play and then mowed down the next 22 Cubs entering the ninth inning.
But Barrett's blooper led off the inning. Glanville, who entered as a defensive replacement for Ricky Ledee, broke the wrong way on the ball, spoiling Milton's bid for a no-hitter.
"I can see it replaying in my head," Milton said. "But it's something to build on."
The last pitcher to throw a no-hitter against the Cubs was the Dodgers' Sandy Koufax, who struck out 14 in a perfect game Sept. 9, 1965, at Dodger Stadium.
"I'm glad we won," Phillies manager Larry Bowa said. "But it's a little bittersweet because he had all the makings of a no-hitter. Doug Glanville is a good outfielder. He took a false step and slipped when he was coming in."
After striking out pinch-hitters Jose Macias and Alex Gonzalez, Milton gave up a sharp single to Grudzielanek, putting runners on the corners. Patterson's game-tying two-run double off the center-field wall tied up the game, prompting Milton's removal.
Milton, who had a no-hitter against Anaheim as a member of the Minnesota Twins on Sept. 9, 1999, at Minneapolis, looked like he was on target for his second for most of Sunday.
The crowd of 44,539 grew louder as the game neared completion. He struck out Ramon Martinez and Cubs starter Mark Prior to end the sixth and Patterson and Sammy Sosa to end the seventh.
After Moises Alou fouled out leading off the eighth, Derrek Lee was called out on a 78-m.p.h. changeup and Aramis Ramirez popped out to second base. But things unraveled in the ninth before Hawkins fell apart in the bottom of the inning.
Prior pitched well in his first outing since July 15, when he left a start against Milwaukee in the second inning complaining of elbow soreness. He allowed two runs on five hits in six innings, striking out eight and walking no one.
"For the most part, from warming up, I felt pretty good," Prior said. "I thought I threw the ball really well, worked down in the zone, and [Alou] made a couple great plays for me out there in left field."
The Cubs started with a bang in the first inning when Milton walked Grudzielanek leading off. Patterson flied to the warning track in right field, but Grudzielanek had rounded second and had to backtrack. The throw from right fielder Bobby Abreu took Thome about 15 feet off the first-base bag, but Thome was able to make a swiping tag on the sliding Grudzielanek.
"It wasn't very good judgment," Baker said of Grudzielanek.
Sosa took a called third strike to end the inning and Milton was in a groove thereafter.
The Phillies took a 1-0 lead in the third on Chase Utley's sacrifice fly on which Alou made a fine running catch of near the wall. Utley poked a solo home run to right leading off the sixth, and Prior was removed after the inning, throwing 96 pitches.
"We battled back like a dog," Baker said. "From a no-hitter to tying the game up. A lot of lows, some highs at the end and back to lows. It takes a lot out of you."