Computer control is more of a safety issue than a reliability enhancer. Computers are pretty good at stopping trains before they crash into another train or rocket off of a curve some idiot took at 80mph, but not so good at driving the train at its safe limits. Ever ride BART? It's been fully automatic since its inception (in normal operation, drivers have an e-stop button and make announcements) and it isn't setting records for on-time performance.
I think the fascination with Japan's on-time record is a little overblown. I went to high school in Tokyo and I was late plenty of times due to train problems. Snow? Schedule is fucked for the entire day; trains canceled, trains late. Someone falls in front of a train? You're not going anywhere for an hour. As a rider of the New York subway system during the "meltdown", I can tell you that you can absolutely do worse than Japan. But the MTA was still happy to hand out vouchers explaining why I was late to work.
I don't know if they do this, but I'd imagine if they built in buffers and then controlled the train speed based on arrival/departure times they could get pretty accurate. If a run's maximum average speed (mouthful) is 120 km/h then plan on 100 km/h which gives you +20 buffer to play with in order to make sure the time is right. A computer would allow that +20 to be evenly spread so passengers aren't aware of it.
That, of course, has much less to do with computers and more to do with planning and eliminating and accounting for unknowns as much as possible.
It can, if the door slam shuts instead of attempting to reopen and close.
The high punctuality isn't necessarily without its faults; it creates a high-stress environment to adhere to schedule. 106 people died in a train crash that is hypothesized to have happened because the train was 60 seconds late. https://en.wikipedia.org/wiki/Amagasaki_derailment