ATLANTA -- Josh Johnson was almost unhittable. Everyone agrees he can be even better.
Johnson (2-0), who held the New York Mets hitless for six innings on Opening Day, dominated the Braves for 7 1/3 innings, striking out nine and walking three.
"Actually, I felt better my first two starts than tonight," Johnson said, adding that he "couldn't really find my rhythm" and was "effectively wild."
Marlins manager Edwin Rodriguez said Johnson is "amazing" but hasn't reached his peak.
"He's still learning. He's still getting better and better," Rodriguez said. "We haven't seen the best of J.J. That's my opinion. I think this year and next year and years to come, he's going to be the best pitcher in baseball. I can see that coming."
Freeman doubled down the line past third baseman Greg Dobbs. Rodriguez immediately went out to pull his ace after 109 pitches.
Rodriguez said he began worrying in the middle innings about Johnson's pitch count. He said he asked Johnson in the seventh inning if he wanted to keep pitching.
"He said, 'I'm here for the team,'" Rodriguez said.
Would Johnson have remained in the game for the ninth if he still had the no-hitter?
"I would say yes," Rodriguez said, before adding his decision would have been based on the effort Johnson needed to finish the eighth.
Freeman's hit relieved Rodriguez of a potentially difficult decision.
Johnson came close to a no-hitter in the Marlins' opener, blanking the Mets until Willie Harris led off the seventh inning with a double.
Jones predicted Johnson's no-hitter will come.
"That guy is some kind of kid," Jones said. "He's going to have his day. I'm just glad it wasn't today."
Johnson surprised Jones and the Braves with his new curveball. Jones was happy to take a first-inning walk when he had his first look at the new pitch.
"I thought, 'Oh, OK, he's got a curveball now,'" Jones said. "I hope he doesn't throw that to me too many times."
Braves first-year manager Fredi Gonzalez, who managed the Marlins for 3½ seasons, was also impressed with Johnson's new look.
"He threw in a different wrinkle from what I've seen," Gonzalez said. "That's a sign of a good pitcher.
"He's gotten himself into a class, when you start naming top right-handers, he's up there," he said.
Johnson said a no-hitter "isn't one of my goals" but added "if it happens, it's really special."
After taking a no-hitter into the seventh in his first start, the two-time All-Star, who led the NL in ERA last year, came even closer this time. With his pitch count rising, Johnson needed only eight pitches to retire the Braves in order in the seventh.
Martin Prado grounded back to Johnson to open the eighth before Freeman's double.
Johnson was trying for Florida's first no-hitter since Anibal Sanchez threw one against the Arizona Diamondbacks on Sept. 6, 2006. Al Leiter, Kevin Brown and A.J. Burnett have also pitched no-hitters for Florida.
Tim Hudson (2-1) gave up seven hits and five runs in six innings.
Attendance was 14,351, one day after the series opener drew only 13,856, the smallest in Turner Field history.
Coghlan led off the night with his team-leading sixth double but the Marlins didn't have another two-base hit, ending their streak of at least two doubles in 10 straight games.
Hanley Ramirez drove in Coghlan with a single up the middle. Coghlan added a two-run single in the second after Johnson drove in a run with a single, a hit that came after John Buck was intentionally walked to load the bases.
Morrison's homer in the third pushed the lead to 5-0.
Jones became only the third switch-hitter with 1,500 RBIs, joining Eddie Murray (1,917) and Mickey Mantle (1,509). ... Jones took a called third strike to end the sixth for his first strikeout of the season. ... Coghlan hit a single in the seventh and, trying for his second double of the game, was thrown out at second by Prado from left field.