It is also very likely that, if a new referendum reversed the result, it would do so with an equally slight margin to the original referendum. And that would solve nothing. We can't have referendums until we get it "right" (or until we get a large enough margin).
As to the change in the public opinion, polls have shown that many people who voted Remain don't actually want a second referendum, they just want to "get on with it" and implement the results of the first one. My intuition is that the vast majority do so out of a misguided belief that a democratically taken decision cannot be overtaken democratically, that not implementing the result of the referendum (even if they disagree with it) is undemocratic and that parliament is obliged to follow the results of the referendum even though it was not binding (i.e. they don't understand the words "non-binding"). In other words, they misguidedly believe that the democratic thing is to go ahead with the Brexit, regardless of any circumstances, changed or not. And they are prepared to fight for democracy with all their might, even if they don't really understand it. Therefore many would probably vote "Leave" in a second referendum, thinking they were doing the right and principled thing. And if the decision was reversed, these same Remainers would descend on the streets and riot, and demand the heads of the Enemies of the People who dared oppose themselves to their will.
In short, having another referendum now would create even more chaos than the first.
For the record, I'm an EU immigrant to the UK and Brexit seriously spoils my ointment. I'm as anti-Brexit as it's possible to be. However, I don't think a new referendum is a solution. I don't think there is any solution- no realistic ones anyway. The country put a pistol to its temple and pulled the trigger. Now we're in the time between the gun having gone off and the bullet hitting.
There is no turning back :(