Well, having left the Fiat on the driveway for the last 3 weeks or so because it kept cutting out, today I removed the fuel pump under the back seat to inspect it and the state of the fuel tank.
There was a layer approx. 1cm thick in places
of sludge sediment (combination of rust and dirt/silt particles) in the base of the pump, so I carefully cleaned it all out. The tank itself was fairly clean apart from surface rust at the bottom, which seemed fairly firmly attached so I left it.
However, on taking it for a drive to the local supermarket and to put 5 litres of fresh fuel in, although it performs a little better, it still cut out a couple of times and was difficult to restart. Same again when I went out for a short run this evening.
Not sure what to look at next: I've tried all the usual new fuel filter, cleaning out the SPi throttle body and idle control valve, changing crank position sensor and coil packs, fuel pump relay, checking ECU connections, etc.