The Peruvian Foreign Ministry said on Saturday that the decision was made due to "the repeated statements made by Hugo Chavez, the Venezuelan president, about the Peruvian electoral process and the ones made today about President Alejandro Toledo".
Peru had recalled its ambassador in January after Chavez voiced support for Peruvian presidential candidate Ollanta Humala, a leftist populist, ahead of the country's April 9 elections.
This time, Peru withdrew the ambassador, who had returned to Caracas, after the leftist Venezuelan leader called social democratic candidate Alan Garcia a "thief" and again praised Humala.
The escalating war of words began when Alan Garcia, the Peruvian presidential candidate and former leader, earlier this week referred to Chavez and his close ally, Evo Morales, the Bolivian president, as spoiled children for criticising Peru's signing of a free-trade pact with the US.
Chavez responded by calling Garcia, whose 1985-90 administration was marked by hyperinflation, food shortages and guerrilla violence, a "thief" and "crook".
Toledo does not want Chavez
meddling in Peruvian affairs
Chavez threatened to withdraw Venezuela's ambassador if the former leader is elected in an upcoming presidential runoff against Humala.
On Friday, Toledo said: "I will not permit President Chavez to once again interject himself [in Peru's affairs] ... much less with blackmail and threats."
Chavez said ant on Saturday: "It's nothing personal, it's ideological, political, ethical: [Garcia] is immoral." He was speaking during a meeting with Cuba's Fidel Castro and Morales in Havana, where the three signed a trade pact.
He said that the complaints by Toledo's government showed that Garcia and the Peruvian leader are "crocodiles from the same waterhole".
Garcia will face Humala, who led the first round of voting, in a runoff in late May or early June.