Whether we end up revoking aritcle 50 or in the EEA or having another vote or something else entirely, the EU can make such a change much more acceptable by doing the following:
A very strict, five to ten year, residence test that excludes newcomers from the whole welfare system, social housing, benefits, etc. Made retrospective, it would free up circa 200,000 social housing units for British people. Possibly, even the personal tax allowance would be included. Exceptions for nurses and the like so as not to impinge upon essential services.
Freeze net payments into the EU, over time they will decrease in real terms and in relation to the size of the UK's economy. This in recognition that the UK won't be joining the eurozone or further integration. Currently some of the money the EU gets from the UK comes back into the country, over time this would move back into control of the UK.
Some easing of control of the European courts over our ability to deport foreign criminals and some easing on the fishing and agricultural limits.
These changes would need to be implemented before a second vote and people need to see foreigners moved out of social housing so that they know that at long last the government is taking them seriously.