We don’t even know what he saw. It could have been so bad it was clear there was no saving Ben. Maybe it was a likely future. And he had a moment of weakness, and then he came through it. If you don’t think he can have a one second lapse in judgement, then yes, you think he should be perfect.
The movie should have let us know then. It’s not enough to keep us guessing. If the film wants the the vast majority of viewers to accept Luke’s u-turn, it needs to make us understand what causes Luke to loose his composure like that.
And I think this says it best:
I think people are underestimating the guilt Luke must’ve felt when Kylo turned. Ben wasn’t just any student, Ben was his nephew, the son of his best friend and sister; and Luke failed him. Luke failed Ben in the worst way a Jedi master can fail. He also failed all of his other students, and they died because of his failure.
EDIT: On top of that, he probably figured that Leia and Han never wanted to see him again. Or, at least, he couldn’t bring himself to face them after what he’d done.