The government has been defeated in a landslide Lords vote which will set up another Commons showdown over an amendment to give MPs a “meaningful vote” even if the government fails to reach a Brexit deal.

The House of Lords voted in favour of a new amendment, devised by Tory MP and pro-EU rebel Dominic Grieve and tabled by Viscount Hailsham, by a significantly bigger margin than the last time the issue was debated. The amendment was passed by 354 votes to 235 – a majority of 119.

Michael Heseltine, Chris Patten and Sayeeda Warsi were among the 22 Tory peers who rebelled and backed the amendment.

Hailsham, the former Conservative cabinet minister Douglas Hogg, tabled the last-minute amendment on Monday morning, based on the deal Grieve believed he had struck with the solicitor general, Robert Buckland, in order to avert a government defeat in the Commons by pro-EU Tories.

Grieve said later he was double-crossed and the government went back on the agreement they had reached. Ministers tabled an amendment that would mean a vote only on a neutral motion, which would give MPs no power to halt a cliff-edge Brexit – a change that Grieve said meant the compromise was unacceptable.

Hailsham tabled an amendment which he said was based on the original deal, dubbed “Grieve 2”, which he said would give MPs the chance to vote in parliament, even in the event of “no deal”.

Speaking in the House of Lords, Hailsham said: “I am asking your lordships to make a decision to enable a House of Commons to vote on what Mr Grieve believes was agreed with the government.”

Hailsham said Grieve was a man “of the utmost personal and professional integrity” and said he accepted his version of events “without reservation”. He said the government’s offer “not only fails to deliver a promised ‘meaningful vote’... but is far worse. It is seeking to make it impossible. It deliberately removes the possibility.”

Under the new amendment, ministers must update parliament by 21 January 2019 if there is no prospect of a deal with the EU and then have two weeks to return to the House of Commons with a statement on how the government plans to proceed. MPs would then be given a vote on whether to approve the action in statement.

The Commons will vote on the revised amendment on Wednesday, though government sources have said they are confident Tory rebels do not have the numbers for it to pass.

The House of Lords leader, Natalie Evans, had urged peers to reject the amendment. “It is not right that your lordships’ house could have a veto on the deal simply by refusing to consider a motion,” she said, saying the alternative amendment by Hailsham contained “major flaws”.

Several former Tory cabinet ministers also spoke out against the amendment. Former party leader Michael Howard said the amendment “would be to confer upon parliament a negotiation power which has always resided in the hands of the executive in our country”.

Former chancellor Norman Lamont said the amendment was unnecessary because parliament would always have the power to act in the event of no deal. “Obviously it would come to parliament, obviously it would be a major event,” he said. “Do we really have to write it down with all these complicated provisions?”

The meaningful vote is now the only unresolved issue after peers agreed not to pursue further challenges on other key issues such as membership of a customs union. At the report stage of the bill, peers inflicted 15 defeats on the government.

Angela Smith, Labour’s leader in the House of Lords, defended the scrutiny that the EU withdrawal bill had come under, calling the original legislation “deeply flawed and divisive”.

“We’ve seen a fair bit of sabre rattling from some of the most enthusiastic of Brexiteers and supporters,” she said, saying the drama did “nothing to improve the quality of debate or journalistic integrity”.

Smith said she did not believe the Lords should engage in extensive “ping pong” between the Lords and the Commons lightly, but said matters are “clearly and obviously unresolved in the House of Commons”.