The Braves' offensive eruption was enough for Teheran, who scattered six hits while walking one and striking out five over 6 1/3 innings.
Andrelton Simmons, a former Braves shortstop, opened the scoring with a solo shot in the second, and Albert Pujols and Luis Valbuena hit back-to-back jacks in the fourth that cut Atlanta's lead to 6-3.
Pujols is now only two home runs shy of becoming the ninth player in Major League history to reach 600.
The defeat capped a tough day for the Angels, who learned that they will be without star center fielder Mike Trout for six to eight weeks.