I've found a working solution elsewhere online. If the BIOS update program runs successfully but your BIOS isn't updated: disconnect your CMOS battery for a few seconds and reconnect it. If you boot now, the BIOS reports that it lost its config, datetime etc. Confirm this (save and exit) and boot, re-flash. Now the BIOS will be updated.
Please note that you might think that loading defaults from the BIOS will do the same but it doesn't: it seems that a low-level NVRAM setting is corrupted and can only be reset by disconnecting the CMOS battery.