"I was very happy with what I was able to do today," Hamels said after being pulled in only 3 1-3 innings.
Jose Bautista and Yan Gomes each drove in three runs and Brett Cecil allowed one run on four hits over four innings, striking out two for Toronto, which had 15 hits.
"It's all about fine-tuning now, to be able to throw all of your pitches where you want to," Hamels said. "It's nice to know you can go out there and be free and easy and build up the arm strength that you have to have. I feel I'm getting there."
Hamels' performance didn't faze manager Charlie Manuel, either. "He was all right. He was OK," Manuel said. "He was working on his change and his cutters. He's fine. As long as I see something coming out and he's throwing strikes and things like that. If I think he's consistent enough it doesn't bother me."
The Phillies gave Hamels a 1-0 lead in the first on Shane Victorino's triple to right-center off Cecil and Hunter Pence's sharp hit through the hole at shortstop. They didn't score again until the ninth when Luis Montanez doubled to right-center and Michael Martinez singled.
Cecil is 3-0 this spring with a 0.90 ERA. He has allowed six hits in 10 innings. Toronto gave him the lead in the third when Gomes hit the first of his two doubles and Yunel Escobar singled him home. The Blue Jays chased Hamels with three runs in the fourth. Ben Francisco and Rajai Davis singled, Mike McCoy dropped an RBI bunt single to first base and stole second, and Gomes hit a two-run single.
Phillies reliever Jose Contreras only got one out in the Blue Jays' five-run sixth. Davis singled, Gomes and Escobar hit run-scoring doubles, Brian Bocock singled for another run, David Herndon replaced Contreras and Bautista homered over the left field wall.
"It was a first-pitch fastball," Herndon said. "He ambushed me."