“You’d rather score a whole bunch of runs and sit back a little bit, but sometimes it’s not like that," manager Dusty Baker said. “So I was glad that we scratched across those runs and were able to win it."
It was a much-needed performance from Gurriel, who hit .319 last season to win the AL batting title but has struggled this year. He entered in an 0-for-9 slide and is hitting .224 this year.
Javier (3-2) allowed three hits in 5 2/3 scoreless innings as Houston won its second straight after dropping the series opener.
“He had a very good slider, good fastball to start, came off crisp, had good location," Baker said. “And it just seems like they don’t square up his fastball that often."
Ryan Pressly struck out one in a scoreless ninth for his seventh save.
Cleveland starter Cal Quantrill (1-3) gave up six hits and two runs while walking four in six innings to lose his third straight decision.
“Did a pretty good job of keeping the team in the game," Quantrill said. “It wasn't easy today, but I thought it was a good battle."
The Astros loaded the bases with two outs in the third, but Quantrill escaped the jam when he retired Gurriel on a fly out.
Yordan Alvarez walked with no outs in the sixth, then Gurriel hit a grounder and was called out at first. The Astros challenged the call, and it was overturned.
Aledmys Díaz hit a grounder next, and he was also called out a first. Houston challenged that play, and it was overturned, too, leaving runners at first and third after Gurriel was out at second on the force. The Astros extended the lead to 2-0 when Alvarez scored on a sacrifice fly by Jason Castro.
Javier had allowed just a first-inning walk by José Ramírez when the Guardians got their first hit on a single by Ernie Clement with two outs in the fifth.
There were two outs in the sixth when Amed Rosario singled on a grounder to left field. Ramírez followed with a double that chased Javier. He was replaced by Ryne Stanek, and Owen Miller lined out to leave everyone stranded.
Naylor walked to start the seventh before Andrés Giménez singled off Blake Taylor. There were two outs in the inning when Neris took over for Taylor and bounced a pitch in the dirt to allow Naylor to score. Neris walked Austin Hedges but retired Myles Straw.
Guardians: RHP Aaron Civale, who was scheduled to start Thursday, was placed on the 15-day injured list with glute tightness. LHP Konnor Pilkington will be recalled from Triple-A Columbus to start in his place.
THEY SAID IT
Siri, who had his fourth stolen base Wednesday night, on his speed: “I have a lot of fun. I feel like I’m a player, that I can change the game in a second, whether it's with my legs or with the bat."
Guardians: Pilkington (1-3, 2.08 ERA) will make his second start and fifth appearance when the Guardians open a three-game series at Detroit Thursday night.
Astros: Houston is off Thursday before Justin Verlander (6-1, 1.22) looks to win a seventh consecutive decision in the opener of a three-game series at Seattle.
Cardinals aim to end 3-game road skid, play the Braves
St. Louis Cardinals (44-39, second in the NL Central) vs. Atlanta Braves (48-34, second in the NL East)
Giants head into matchup against the Diamondbacks on losing streak
San Francisco Giants (40-39, third in the NL West) vs. Arizona Diamondbacks (37-44, fourth in the NL West)
Blue Jays try to end road slide, take on the Athletics
Toronto Blue Jays (44-38, fourth in the AL East) vs. Oakland Athletics (28-55, fifth in the AL West)
Red Sox and Rays play in series rubber match
Tampa Bay Rays (44-37, third in the AL East) vs. Boston Red Sox (45-36, second in the AL East)
Pirates play the Yankees with 1-0 series lead
New York Yankees (58-23, first in the AL East) vs. Pittsburgh Pirates (33-47, third in the NL Central)
Brewers and Cubs meet in series rubber match
Chicago Cubs (33-48, fourth in the NL Central) vs. Milwaukee Brewers (47-36, first in the NL Central)