Not familiar with prado ..
Could it be the gauge has failed / stuck showing half full but the tank is empty ? also read there is discrepancies of up to 30 ltrs being left in sub tank when showing empty on the gauge ?
These might give you a bit of an idea to try also .Check the fuse box and relays for the fuel pumps and ignition .. Have you checked for spark [ CAREFULLY AS ITS ELECTRONIC AND COULD KILL YOU ] if touched when testing ... fuel for water contamination [ drain into a clear bottle and allow to settle to see ] / Fuel filter clogged / collapsed .... open the fuel cap to check for vacuum lock [ try to run engine with out cap on ] IE tank not breathing .vent lines collapsed charcoal canister blocked ...will get a big suck back of air rushing into tank when removing fuel cap .
can you hear the fuel pumps running in the main tank when the key is turned on, could be one in the tank + plus an external one ..
Fuel lines cracked allow to suck air or squashed from rock impact .. ... O2 sensor plug / wires [ our 4 runner V6 the wires shorted inside the plug had melted ] .
From what Ive just had a quick read of, the Sub tank on a 120 transfers fuel to the main tank via an extra fuel line on the main tanks pump till its empty and the engine feeds from the main tank pump .. fuel line cracked / pick up broken sucking air above fuel / filter clogged in sub tank ?
Hope this may help .