I have just had exactly the same problem, which I finally sorted yesterday. This may not cure yours, this is the sort of problem that could be caused by lots of different things. Anyway, here's what I did- on my 1993 range rover, the petrol pump sits down inside the tank, it has two mesh filters on it's intake. These were partly blocked, so it started fine, ticked over fine but as soon as you drove off and the engine needed more fuel, the filters were just getting sucked up against the pump and it couldn't give the engine enough petrol. I have now removed the mesh filter off the in-tank pump and fitted an inline filter instead- now it runs like a dream!! If this is the same problem you have, listen down near the tank when you have the problem and you will hear the pump making a wailing noise.
Dave.