Walker hit a go-ahead, three-run homer that rallied the Mets past the Rockies 6-4 on Sunday and prevented a season sweep.
The switch hitter also had an RBI triple, extending his recent tear at the plate, and Jeurys Familia rebounded from consecutive blown saves. New York sustained another costly injury, this one to shortstop Asdrubal Cabrera, but snapped a four-game skid that matched its longest this season.
"It's a huge win for us," manager Terry Collins said. "Hopefully it gets us going a little bit and we kind of lighten up and loosen up a little bit, start swinging the bats better."
Alejandro De Aza and rookie Brandon Nimmo each contributed a run-scoring single as the third-place Mets finally generated some offense — and a little momentum heading into this week's Subway Series against the retooling Yankees. The first two games are at Citi Field, with the final two across town in the Bronx.
Playing without ailing slugger Yoenis Cespedes, New York won for only the second time in 10 home games and averted a four-game sweep to finish 1-6 against the Rockies (52-53) this year. Before that, the Mets took 11 straight from Colorado — including a 7-0 mark last season.
"You never like to be staring at the barrel of a possible four-game sweep at home under any circumstances," Walker said.
Carlos Gonzalez hit a tying double in the fifth and a go-ahead sacrifice fly in the seventh off winner Jerry Blevins (4-1). Daniel Descalso had two RBI singles for the Rockies, who had won five in a row and nine of 10.
"We're playing really well. It's really exciting, where we're at right now," second baseman DJ LeMahieu said. "I see us keeping it rolling, too.
"We believe in ourselves. You can't fake believing in it, and we believe in it."
De Aza walked with one out in the seventh and, one out later, James Loney drew a 10-pitch walk from Boone Logan (1-1). Walker drove his 17th homer to left-center, pumped his fist after crossing the plate and eventually came out for a curtain call.
Logan had not allowed a home run since Peter Bourjos connected for St. Louis on June 9 last year. The lefthander's streak lasted 45 2/3 innings.
Addison Reed struck out three in a one-hit eighth, and Familia fanned two in a perfect ninth for his major league-leading 37th save in 39 attempts.
The righthander had racked up a franchise-record 52 consecutive saves in the regular season, the third-longest streak in major league history, before failing Wednesday night against St. Louis and Thursday vs. Colorado.
Cabrera was hurt while scoring from first base on Walker's two-out triple in the first. As he looked back to find the ball, Cabrera stumbled immediately after rounding third and hobbled all the way home. He was helped to the dugout by teammates.
A few innings later, the Mets announced that Cabrera had a strained patellar tendon in his left knee — the same injury that sidelined him for a little more than two weeks during spring training.
"We didn't have to carry him off the field in spring training. So I'm really concerned about it," Collins said. "He was in a lot of pain — a lot more than I've ever seen him."
Cabrera is expected to see a doctor Monday.
Perhaps a slick spot played a role in his injury. The start was delayed 38 minutes by rain that fell much of the morning as the tarp covered the infield. In fact, a potentially wet field was one reason Collins held Cespedes out of the lineup.
Cespedes has been playing through a strained right quadriceps and left Saturday night's rainy game after five innings when the nagging injury tightened up.