Just a thought on this one. I had this same problem and checked all the usual.
In the end, I discovered that it was the quite expensive after market immobiliser that was fitted in the car. I think there were three areas where the power could get cut from. Two I found were the main fuseboard under the driver dash for + which was a thick wire. The immobiliser circuit that had failed was wired to the sense circuit for the fuel pump relay. It was by pure chance I found the immobiliser unit being 2-3" long and roughly 2" in diameter and bolted up under the dash/steering wheel area. the unit felt very hot so thought something might be up with it although it worked fine and incidentally does if it's the fuel pump relay cut off circuit.
To check, I removed the fuel relay, made a thick wire of 4 inches in length as it has to handle quite a current, and crimped a 3.8mm spade terminal on each end. Then I twisted the spade terminals a bit so they were slightly bent and that way they stayed in and on the fuseboard when I plugged the spades into the terminals where the big relay spades go. The other two smaller pins on the relay are the sense circuit. I left those for the time being.
The car ran perfect and did not cut out after 20 mins.
For good measure, I made up test light and wired that into the sense terminal holes where the relay would go. Sure enough the light went out after 20 mins drive and would come on again after 5-10 mins. I knew then that the immobiliser was at fault so I rewired the two fuel relay sense wires directly to the fuseboard and just taped up the immobiliser wires out the way for that circuit.