French weather forecaster Meteo France, which has a cyclone-monitoring station on the Indian Ocean island of La Reunion, said Freddy hit the coast near the tourist town of Vilankulo in Inhambane province around 2 p.m. local time (1200 GMT).
The situation was calm two hours later, with no casualties reported although trees and rooftops had fallen, said Vilankulo district administrator Edmundo Galiza Matos in a statement.
Pictures posted by Matos on Facebook showed children and adults sitting on the floor in a crowded primary school classroom. He said in the statement that 183 people had taken shelter there.
"The Government of Vilankulo continues to monitor the situation on the ground and thanks the population for responding positively to the appeals of the authorities," the statement said.
The storm should weaken over the next few hours, but heavy rainfall will continue to pose a threat over the next few days in southern Mozambique and southeastern Zimbabwe, said Meteo France.
Some parts of northern South Africa are also at risk of flooding and wind damage, the South African government said in a separate statement.
Cornelder de Moçambique, a company that operates cargo terminals in Mozambique's main port Beira, said in a statement that the port was closed until 7 p.m. local time (1700 GMT) on Friday, subject to the weather conditions improving.
Up to 1.75 million people could be affected by the storm and severe flooding, the United Nations Office for the Coordination of Humanitarian Affairs (OCHA) said in a statement.
"The confluence of multiple threats is compounding a severe humanitarian situation in Mozambique," said OCHA, adding that aid agencies were deploying staff to Inhambane and Gaza provinces.
Mozambique has already been battling severe flooding in recent days, and the government has declared a state of "red alert" to expedite operations to tackle Freddy.
It hit Madagascar earlier this week as a tropical cyclone, destroying houses, displacing thousands and killing at least seven people.
Freddy weakened as it passed over Madagascar before strengthening again in the Mozambique Channel.
In Zimbabwe, which is expected to see heavy rain from Freddy, the education ministry has suspended school in six provinces.