Gholamreza Enayati gave Saba a lead after 20 minutes into the match from the penalty spot but Karimi cancelled out the goal 10 minutes later.
Enayati celebrated his 100th goal in Iran Professional League in the 65th minute when he converted his penalty kick once again.
Karimi also scored a brace from the penalty spot in the 89th minute.
Saba coach Abdollah Veisi spoke out against referee Saeid Mozaffarizadeh at the post-match news conference.
“I am really sorry for the referee because he hurt us. Mozaffarizadeh had to send off Persepolis defender three times in the first half. Moreover, he made a wrong decision when he showed the penalty spot for Persepolis in the last minute,” Veisi said.
Elsewhere, Naft lost to Zob Ahan 1-0, Damash was held to a goalless draw against Shahin, Mes beat Traktorsazi 1-0 and Foolad lost to Sepasi 2-1.