when you have the power loss, is there a flashing check engine light on? If so then the next step would be to plug in a scan tool to pull off the stored code and so point to the issue
if there's no light / code then this sounds like a lack of fuel and could be a lack of fuel pressure from the electrical pump at the tank.
1st thing to try is to remove the fuel filler cap and then flick the ignition on whilst listening for the brief ‘buzz’ of the pump
If the connections to the pump are corroded or damaged then the pump could stop at any time or could not be running at full speed. Check that its relay switches in and out and the relay contacts are clean and bright – replace the relay if in any doubt and do the same for the fuse,
Ideally measure the pressure at the injector rail (should usually be around 3Bar / 45psi +) and if this is low check the pump as described and also consider changing the fuel filter as if this partially blocked this too will reduce pressure.
You can also get this issue with contaminated fuel , if there’s water or dirt in the tank then either the petrol floats on top of the water or the filter sock on the pump is choked up – so if the other things check out then I’d consider pulling out the fuel pump and cleaning the filter sock
And one other thing to try is to loosen off the fuel filler cap, as there’s a 1 way valve built into the cap to let air into the tank and so prevent a vacuum from being created as the fuel leaves the tank to the engine
If this helps then replace the cap with a new item