Back one last time to say I think we've cracked it - for however long it lasts! After my last update he started shortening his naps again, so I tried a nap at 12.45 and they lengthened a bit, then I tried 1pm and they lengthened to 1hr 15-25 and they've stayed there ever since
Well, it's been 3 days of good naps, anyway, and he's waking happy and is full of beans all day. At least I know that keeping him up longer is what did it (again!). Now he's doing:
WU: 6
Nap: 1 - 2.20ish
BT: 7.30 (probably asleep by 7.40)
Anyway, thanks for your help. It feels good to have had three days the same at last!