''I felt good,'' said Fowler, acquired from Colorado during the offseason. ''I came out and in the beginning (of spring training) I was trying to experiment with some things. I just went back to basics and got locked back in.''
Freeman added a single and walk in three plate appearances and is batting .400.
Jose Altuve, Robbie Grossman and L.J. Hoes had two hits apiece for the Astros.
Braves starter David Hale allowed 12 hits and six runs in 5 1-3 innings.
''It was just one of those games,'' said Hale, bidding for a spot in the Braves' injury-depleted rotation. ''I've got to put it behind me.''
Hale walked two, including Keuchel in a three-run fourth, and struck out four. He also threw two wild pitches.
''For me, the negative was walking the pitcher,'' Atlanta manager Fredi Gonzalez said.
Braves closer Craig Kimbrel pitched in back-to-back games for the first time this spring. He allowed a ninth-inning run on a double by Jason Castro and a sacrifice fly.
After giving up the homers to Johnson and Upton in the first inning, Keuchel recovered to retire his last five batters. He struck out seven in four innings.
''I just kind of worked through it,'' the left-hander said. ''I think I did a good job of battling the last three innings.''
Keuchel, competing for one of two open spots in the Houston rotation, had three scoreless outings before giving up 13 hits and seven runs in four innings against Miami last week.
The long three-run homer to center field by Johnson came on an 0-2 count.
''You can't take your foot off the gas,'' Keuchel said. ''I didn't spot a high fastball and CJ hit it out.''
Braves catcher Evan Gattis, who hadn't played since March 17 because of sore right quadriceps, returned to the lineup. He caught six innings and went 0 for 3 with two strikeouts.
Left-hander Mike Minor, out all spring with shoulder tendinitis, is scheduled to pitch when the Braves play a team of top minor league prospects Saturday in Rome, Ga. Minor hopes to be able to join the rotation in late April.
Right-hander Gavin Floyd, signed as a free agent after major elbow surgery a year ago, is slated to make his spring debut in a minor league game Friday. Like Minor, he could be ready to pitch by the end of April.
Ervin Santana, who signed late with the Braves after they lost Kris Medlen and Brandon Beachy to injury, will make his second spring start Tuesday against Detroit in Lakeland. The right-hander pitched two innings against the New York Mets last Thursday, allowing two hits and a run.
Atlanta signed veteran right-hander Aaron Harang for the rotation after releasing Freddy Garcia. The Braves also sent five players to Triple-A Gwinnett: outfielders Jose Constanza and Joey Terdoslavich, infielders Tyler Greene and Tommy La Stella, and left-handed reliever Ryan Buchter. The team has 29 active players, four over the regular-season season maximum.
The Astros have 30 active players after releasing veteran infielder Cesar Izturis and sending pitcher Josh Zeid, catcher Rene Garcia and outfielder Adron Chambers to minor league camp.