The Prime Minister warned MPs that if they did not back her deal, "we will not leave the EU for many months, if ever".
Postponing a vote on the deal would mean that MPs could not table amendments before May has discussed a delay with Brussels, leaving her able to go there with a straightforward request for a delay.
If May returns from Brussels with a long delay already signed off by the EU, MPs in Leave-supporting constituencies could face intense pressure from voters to accept the current deal for fear that Brexit might never happen otherwise. Some MPs who voted down the deal last week have changed their minds after intense lobbying from constituency parties, with up to 50 Tory MPs said to be facing the threat of deselection if they stand in the way of Brexit.
May told MPs last week that she would hold a third vote on the Brexit deal by Thursday at the latest. However, Fox told Sky News: "I would say to my colleagues, all actions have consequences, and if you really want to deliver the Brexit that we all promised ... then we need to back the Prime Minister, because there is no other deal on offer."
But he added: "It would be difficult to justify having a vote if you knew you were going to lose it."
Hammond told the BBC the vote would "not definitely" happen, adding: "We will only bring the deal back if we are confident that enough of our colleagues, and the DUP, are prepared to support it so that we can get it through Parliament". Asked if sufficient MPs had changed their minds to alter the result of the vote, he said: "Not yet ... it's a work in progress."