Detroit sent Willis (0-1) to Lakeland in June to straighten out his control problems. Though he pitched well enough to win Thursday, he again struggled to throw strikes at times.
Willis surrendered a leadoff double to Chris Heisey in the first and walked Todd Frazier before escaping trouble with an inning-ending strikeout.
It didn't get much better an inning later when Willis loaded the bases on two singles and a walk. Yuber Rodriguez bounced into a double play, allowing Logan Parker to score the game's lone run.
Willis got another double play in the third and retired the next eight batters in order before walking Justin Tordi to start the sixth. Frazier followed with a single to end Willis' night.
It was an improvement from Willis' last appearance on July 26, when he allowed three runs on four hits and three walks in 4 1/3 frames against the Reds.
The 2003 National League Rookie of the Year lowered his ERA to 3.77, but has also walked nine in 14 1/3 innings.
The good news, however, is that Willis has gradually built up his innings and pitch counts in each of his three starts. He's also given up only one home run while striking out six.
The Tigers are hoping Willis can smooth out the inconsistencies in his distinctive windup after he posted a 10.32 ERA and walked 21 in only 11 1/3 innings before his reassignment.
Willis' next start could come either Aug. 4 against Tampa or Aug. 5 against Clearwater, depending on how Lakeland (20-17) handles its staff for Sunday's doubleheader.
The former Marlins ace signed a three-year, $29 million contract with Detroit after being traded from Florida with slugger Miguel Cabrera last winter. He spent time on the 15-day Disabled List with a knee injury in April and made three rehab outings for Triple-A Toledo in May.
Matthew Klinker (1-0), a former 15th-round pick, held Lakeland to six hits over 6 2/3 innings for Sarasota (20-19).
Danny Wild is a contributor to MLB.com. This story was not subject to the approval of Major League Baseball or its clubs.