The 20-year-old from Poland dropped four straight games to trail 5-4 in the second set before righting herself and claiming the last three to wrap up the win in 90 minutes.
Kovinic was playing in the third round at a Grand Slam tournament for the second time. The other was at the Australian Open in January, when she lost to eventual champion Ash Barty.
Barty retired in March and was replaced at No. 1 in the WTA rankings by Swiatek.
Irina-Camelia Begu has reached the fourth round at a Grand Slam tournament for the first time in six years, getting there at Roland Garros one match
after being fined $10,000 for tossing her racket and having it brush a child in the stands.
The 63rd-ranked Romanian advanced by beating
227th-ranked French wild-card entry Leolia Jeanjean 6-1, 6-4 on Saturday.
Begu is 31 and participating in her 41st major tournament. Her best showings previously were fourth-round runs at the 2015 Australian Open and the 2016 French Open.
Jeanjean was appearing in her first tour-level event and beat two-time major finalist and former No. 1 Karolina Pliskova in the second round.