MS since you have an external flash module, are you able to measure the current passing through the flash?
I am wondering if the high current is caused by nRF52840 but not the flash after sending the 0xB9 command and 0xAB command.
Could you also replace the release command 0xAB by reset command 0x66 + 0x99?
Each flashTransport.begin() will send command 0x05, could you only “begin” one time in your code?
void flashReset()
{
flashTransport.runCommand(0x66);
flashTransport.runCommand(0x99);
}