Agreed, lack of patience is part of the problem, and it's also something to do with, in my opinion, not knowing what's coming.
What I mean is that although you must stop at a grade crossing no matter whether it's a mile-long freight train or a single light rail vehicle, you would be more likely to stop and wait if you knew it was just a short train.
I remember back in September of 1989, on the very first day of NJT commuter rail service on the Atlantic City Line (there had been Amtrak trains running there for several months ---- service later cancelled) there was a tragic incident where a woman drove around the gates, was struck by a commuter train, and she and her child were killed. Was her haste worth the result of not taking the what, 20-30 seconds it would take for a locomotive and three coaches to pass the crossing? We'll never know, but perhaps she thought she would have had to wait 5 or 10 minutes for a slow freight to go by.
Unfortunately, there really is no way to inform drivers of how long and how fast the approaching train is. It's obviously hard enough just to get them to stop and honor the warning bells and lights, gates, and the train horns.