The Braves took two of three games in an interleague matchup of division leaders. They've won four of five overall and 11 of 12 at home to improve to 21-7 at Turner Field.
"Two out of three against any team is very good, especially a team like that," Hudson said. "They're one of the best clubs in the American League."
Tampa Bay's two-game slide dropped the Rays to 9-13 since May 23.
"For the most part, we didn't have many chances, but neither did they," Tampa Bay manager Joe Maddon said. "They took advantage of their chances."
Hudson (7-2) lowered his ERA nine points to 2.34 after allowing four hits, one run and four walks with five strikeouts. The right-hander improved to 113-21 in his career when pitching at least seven innings.
In 11 career starts against Tampa Bay, he is 7-1 with a 2.71 ERA.
Glaus, whose 53 RBI include 27 with two outs, gave the Braves their first lead at 3-1 with a two-run double in the sixth.
"Troy came through with the big hit," Hudson said. "Hit it just soft enough they couldn't get to it. Those are the kind of hits I love."
Atlanta improved to 9-0-3 in its last 12 series. The Braves were 13-18 after losing May 9 at Philadelphia, but are 26-10 since.
Hudson stranded two runners in the fifth by retiring rookie Reid Brignac on a comebacker. Hudson escaped a bases-loaded jam in the seventh following a mound visit by manager Bobby Cox when pinch-hitter Willy Aybar grounded out.
"We just played some good, clean baseball," Hudson said. "We're a tough, gritty team."
Heyward's 11th homer, a solo shot to right-center, tied it in the fourth.
"It was good to get Huddy back in the game," Heyward said. "This team is a team, from bullpen to defense to hitting. That's what you've got to have."
Atlanta took a 3-1 lead in the sixth. Following singles by Hudson and Martin Prado and an intentional walk to Brian McCann that loaded the bases, Glaus lofted a double just beyond the reach of a diving Ben Zobrist in short right field.
"A split second earlier, I would have had it," Zobrist said. "I gave it my best effort. I just couldn't get to it. As soon as I saw it in the air, my thought was to get under it."
James Shields (5-6) lost his career-worst fifth straight start. Making first appearance against Atlanta, the right-hander allowed three runs, five hits and one walk with three strikeouts in six innings.
Shields, who has given up five homers in his last four starts, has a 7.58 ERA during his losing streak.
"A broken-bat hit got them two runs," Shields said. "That pitch and the one to Heyward were the only bad pitches I threw."
Rays center fielder B.J. Upton was 1 for 12 in the series with eight strikeouts. He also was picked off at first by Hudson in the second.
The game started 26 minutes late because of a rain delay.
- Glaus made a backhand grab of Zobrist's hard grounder in the second to begin a 3-6-3 double play.
- The Braves have beaten Tampa Bay in six of seven series and are 15-6 against the Rays since interleague play began.