Updated

Indians manager Manny Acta loves the baseball adage that a team's momentum is only "as good as your next starter."

Josh Tomlin kept Cleveland rolling.

Showing no fear of Boston's star-studded lineup, Tomlin pitched seven superb innings and the Indians came up with just enough timely hits against Josh Beckett for a 3-1 win on Tuesday night, dropping the winless Red Sox to 0-4 — their worst start since 1996.

Tomlin (1-0) allowed one run and three hits, taming a Boston team now hitting a collective .186. It was nothing new for the right-hander, who won his big league debut last season against the New York Yankees.

"I'm not scared of competition," Tomlin said. "That's just the way I was raised."

Tony Sipp worked a perfect eighth before Indians closer Chris Perez made things interesting in the ninth. He gave up a one-out single to Dustin Pedroia and a two-out walk to Kevin Youkilis before retiring David Ortiz on a liner to left for his first save.

It was the second straight win for the Indians, who looked so bad in their first two games but now have consecutive wins over Chicago and Boston — the AL's pair of Sox.

"For us every team is the same," said Orlando Cabrera, who had one of Cleveland's RBIs. "Certainly they have great players over there and it seems like they're off to a slow start. We didn't play different. We played hard, scored runs and played good defense, and hopefully we can keep doing that."

Jack Hannahan and Carlos Santana also drove in runs off Beckett (0-1), who allowed three runs and five hits in five innings — a decent outing, but not good enough to get Boston its first win.

This is not what the Red Sox expected — or anyone expected from them.

Picked by many to win the AL pennant in 2011 after adding All-Stars Adrian Gonzalez and Carl Crawford this winter, they were swept in three straight games to open the season in Texas, where the Rangers clubbed 11 homers and outscored Boston 26-11.

It's still early, but unless Boston gets things turned around soon, it won't be for very long. A trip to Cleveland to face the youthful Indians figured to help, but so far, it's been more of the same.

"We need some kind of spark right now," said Crawford, signed as a free agent in December. "It's a little surprising, frustrating. We've got high hopes for this season."

The Indians managed just one hit off Beckett for three innings before getting three and scoring two runs in the fourth.

Travis Hafner, showing signs of being able to turn on pitches again, rocketed a double off the right-field wall with one out and scored on Orlando Cabrera's single. Beckett walked Austin Kearns and struck out Matt LaPorta on a nasty changeup before No. 9 hitter Hannahan grounded a run-scoring single to center.

Cleveland made it 3-1 in the fifth when Asdrubal Cabrera doubled, moved up on a groundout and scored on Carlos Santana's sacrifice fly.

Tomlin nearly got through the first two innings unscathed, but walked Ortiz with two outs in the second after getting ahead 1-2 in the count. J.D. Drew followed with a double and Jarrod Saltalamacchia snapped an 0-for-10 start with an RBI single.

Shin-Soo Choo, who led the AL with 14 outfield assists, kept it 1-0 by throwing Drew out at the plate.

"I knew if that guy tried to score he would be out," Tomlin said. "His arm is unbelievable."

NOTES: After giving up 17 runs in 9 2-3 innings in Cleveland's first two games, Indians starters Tomlin and Justin Masterson gave up only two in 14. ... Tomlin has pitched at least five innings in all 13 major league starts, the first Indians pitcher to do so since 1919. ... Hafner has hit safely in all four games and is batting .375. ... Indians OF Grady Sizemore played seven innings in an exhibition for Triple-A Columbus, the latest steps in his comeback from knee surgery. He's scheduled to play seven more on Thursday for Double-A Akron as the Indians build up his stamina.