Tony Blair says an EU budget deal which will see £1bn a year cut from the UK's rebate is an "investment in the future prosperity" of eastern Europe.
Mr Blair said a failure to reach a deal would have been damaging
The deal, reached in Brussels early on Saturday, includes an EU commitment to review farm spending in 2008.
But Tory leader David Cameron said Mr Blair had failed "in every single one" of his objectives in the EU budget negotiations.
Charles Kennedy said the outcome of the summit was disappointing.
'Wealthy paying the poor'
The deal was reached following a meeting of the European Council in Brussels on 15-16 December.
Mr Blair told MPs: "To have championed the cause of these new states; to have welcomed them into NATO and Europe and then to have refused to agree a budget that protects their future economic development would have been a betrayal of everything Britain has rightly stood for in the past 15 years or more since the fall of the Berlin wall.
"They are our allies. It is our duty to stand by them. But it is also massively in our interest."
The UK could be "proud" of the part it played in the enlargement of the EU from 15 member states to 25, he said.
While the new member states were fast growing, emerging economies with new ideas, they were "much poorer" than the original 15, he said.
The purpose of the budget was to "rightly" transfer cash from the wealthier EU countries to their poorer counterparts, he said.
It would have been "a disaster for this country" and its relationship with central and eastern European countries if a deal had not been reached, he said.
The central and eastern European leaders had said it was "essential" to have a December deal to allow them to prepare and plan for using EU funds when they start in 12 months time.
Without it, countries like Poland would have lost two thirds of their EU funds, he said.
He insisted that "overall the rebate will get us around 41 billion euros back in the next budget period, substantially more than in this budget period".
He also conceded that "there's a fundamental need for the reform of the European budget on the basis of everyone paying their fair share of enlargement".
But Mr Cameron said Mr Blair had failed in his objectives to limit the budget's size, to ensure "fundamental reform" of the Common Agricultural Policy and to keep the British rebate unless reform occurs.
Cuts in spending?
The Tory leader reminded Mr Blair he had said he would not negotiate the rebate away, and that the chancellor had said it was non-negotiable.
"By 2011, the UK will be losing £2bn a year and that will be the baseline from which we negotiate," he said.
"The amount we have given up is almost double our overseas aid budget this year."
He pressed Mr Blair: "Why did you give up £7bn for next to nothing? How is the chancellor going to pay for it: more taxes, more borrowing or cuts in spending? Which is it?"
The prime minister countered that Mr Cameron had supported both enlargement and wealthy countries paying for poorer ones.
"But you don't support Britain paying any money for it. You talk about a crisis in the European Union. What sort of crisis would there be if you were in charge, with that policy?" he said.
Liberal Democrat foreign affairs spokesman Sir Menzies Campbell called the deal, for 2007-13, a "thoroughly disappointing" end to the UK's six-month presidency.
And UK Independence Party MEP Nigel Farage said it was "game, set and match" to France's President Jacques Chirac.
Several Sunday newspapers said Chancellor Gordon Brown, who did not take part in the final negotiations, was unhappy with the agreement.
But a Downing Street spokesman said: "We negotiated as a government."
BBC Europe correspondent Tim Franks said the rebate would continue to rise "for a time" because Britain's overall contributions were rising.
They will increase by 63% to £42bn, while French contributions will rise by 116% and those of Italy by 130%.
Britain is giving up about 20% of the rebate it would have otherwise received over the seven years.
Although it will rise from its current level, it will be smaller as a proportion of the UK's net contribution to the EU.
The budget package is worth £584bn (862bn euros) - an increase on the £575bn (849bn euros) limit Mr Blair originally proposed.