The tournament was supposed to take place in June-July 2023, during the rainy season in Ivory Coast.
“We cannot take the risk,” the South African said in the Moroccan capital Rabat.
With the World Cup in Qatar taking place in November and December this year, the decision has been taken to postpone the finals rather than bring them forward.
It means the Nations Cup will be held in January and February for the second time in a row, after this year’s tournament in Cameroon.
In 2017, Caf announced that it would move the finals from their traditional January-February slot to June-July in a bid to avoid repeated disputes with European clubs forced to release players in the middle of the season.
“January is not the ideal time because of the European clubs, but it is the only choice we have,” Motsepe added.
Caf has also announced that the Champions League final will return to being a two-legged format.