David Cameron has called on other EU countries to "step up to the plate" and follow Britain's lead by funding refugee camps around Syria.
Mr Cameron said there was a "direct connection" between shortfalls in aid for camps in Lebanon, Jordan and Turkey and the influx of migrants into Europe.
Speaking during a visit to the immense Za'atri camp, which houses 90,000 Syrians in Jordan, he warned that a failure to boost spending would mean "many, many, many" more people taking the decision to risk a perilous Mediterranean crossing.
"It is a fact that the World Food Programme and UNHCR are underfunded, and if other countries did as much as Britain has done, we could solve that problem," said the Prime Minister.
"We have given something in the region of £1 billion - that's more than 10 times some of the countries in our region.
"I would encourage others to step up to the plate and spend and invest in the way Britain has done.
"There is a moral imperative for that, but there is also a real connection to the refugee crisis in Europe.
"The UNHCR were saying to me that when there is a squeeze on the money available in the region, that is when people start to move.
"There are 11 million homeless people in Syria, of whom 3% have so far decided to come to Europe. There is an enormous number who could decide to come to Europe. That underlines the importance of other countries supporting the refugee camps and supporting people who remain in Syria."
Mr Cameron has come under intense pressure to join an EU scheme to relocate 160,000 migrants - many of them Syrian - who have entered Europe in recent months.
But he argued the scheme would encourage more to risk the Mediterranean crossing, which has claimed many lives. And he said people he spoke to at Za'atri and at the smaller Dalhamiyet Zahle camp in Lebanon, wanted to go home to a peaceful Syria, not to Europe.
Mr Cameron met some of the families who will come to the UK under a scheme announced earlier this month for 20,000 of the most vulnerable refugees to be resettled from the camps.
These would include sick children, women who had been raped and men who had suffered torture at the hands of dictator Bashar Assad or the Islamic State terror group, he said.
He called on Britain to give them a "warm welcome", saying the offer of sanctuary was "something the whole country can be proud of".
At Dalhamiyet, Mr Cameron was invited into the tent of a mother-of-10, who told him how she struggled to feed her family on reduced 13.50 dollar-a-month handouts after the World Food Programme was forced to cut back support.
He announced he was appointing Watford MP Richard Harrington as minister for Syrian refugees to oversee the operation to welcome the new arrivals to the UK over the next five years.
The PM held talks with his Lebanese counterpart Tammam Salam, who thanked him for Britain's "sustained decisive backing" for his country, which has taken 1.1 million Syrians - more than a quarter of Lebanon's population.
Some £29 million of the UK's latest £100 million donation for Syrian refugees is going to Lebanon, with £60 million going to agencies and charities helping people in Syria itself, £6 million to Jordan and £5 million to Turkey.
Mr Cameron announced Britain was doubling support for Lebanon's state schools to £20 million a year for the next three years, to help them cope with the influx of Syrian children.
Mr Cameron held talks with King Abdullah in the Jordanian monarch's palace in capital Amman.
King Abdullah said he wanted to "commend the role" Britain was playing in the refugee crisis in his country.
He added: "It is commendable that Europe is opening its borders and its hearts after the haunting images we have seen of migrants trying to get to Europe."
Mr Cameron thanked Jordan's people for "the extraordinary generosity they have shown hosting so many Syrian refugees."
He said Britain was "proud" of its support for people in the camps, adding: "We will continue with that investment and we hope other countries will do more."
In Za'atri camp, the PM visited a Handicap International centre, where he spoke to patients with serious injuries from the Syrian war.
He spoke to 15-year-old Malik, who lost a leg to a barrel bomb dropped from a plane as he played football with friends last November. The boy - wearing a Barcelona shirt and a prosthetic leg - told the PM he had been living in the camp with his father for nine months but wanted to return home to Syria.
Mr Cameron explained his decision to take in people from the camps selected by the UN on the basis of need, rather than those who have already reached Europe: "Britain will resettle 20,000 refugees, but we will take them from these camps, we will take the most vulnerable, we will take disabled children, we will take women who have been raped, we will take men who have suffered torture.
"I've met some of the families myself. That's the right thing to do and Britain will do the right thing."
Mr Cameron made clear he blamed Moscow for the impasse in peace talks following earlier talks in Geneva.
Asked about the possibility the process could be revived, the PM said: "The question is really for the Russians in so many ways, because they have been propping up what is a murderous regime that set about this onslaught on its own people.
"What we need is a transition in Syria from (Bashar) Assad, who can't be part of Syria's future and is unacceptable to his people.
"We need a transition and that does need a political process. Britain is ready to help work on that but we do need the Russians to help us too."