The boy was kidnapped from the Siberian Perm region last week.
The 20-year-old woman took Yaropolov from a kindergarten in Krasnokamsk, but left him at a bus stop in Perm five days later, notifying police of his whereabouts by telephone.
"She dreamt of having a boy named Ilya," said regional police chief Andrei Podolyan.
He said the boy followed the unnamed kidnapper because she told him his mother was ill. The boy was well treated and given some toys, but not let outside the woman's house.
The Komsomolskaya Pravda daily said kindergarten employees did not prevent Yaropolov from being taken away because the teacher responsible was absent on the day of the kidnapping. Two employees have been sacked over the incident.
The woman returned the boy at the insistence of her boyfriend, a 60-year-old man who saw an appeal notice for Ilya's return in a bus, the report said.
The woman's boyfriend had earlier served a term for child abuse and stored child pornography at home, the daily said.
The duo were not arrested, investigators said. Kidnapping carries no punishment in Russia if the perpetrators voluntary release the victim.