I suspect it might prove difficult to timetable the current level of service if the trains crossed at Moreton, though I've not sketched it out. As you say the current setup is quite fragile: generally services recover ok from disruption outside the peaks - sometimes aided by a little judicious early turning-back - but the increased frequency in the peaks is very vulnerable.
"Fragile" is a good word to use here.
Meanwhile, things went wrong in the evening yesterday (Tuesday July 30):
1W33 16:58 London Paddington to Great Malvern : departed 14 late, arrived 16 late.
1W34 17:57 London Paddington to Worcester Foregate Street : departed +10, arrived +29.
1W36 18:57 London Paddington to Great Malvern : departed +17, Oxford +28, held Evesham (for on-time 1P46, +42), arrived +42.
1W05 19:53 London Paddington to Hereford : OK until west of Worcester. Arrived Great Malvern +16, held Malvern Wells (for 1P06, +24), arrived +31.
1P42 19:05 Great Malvern to London Paddington : held Charlbury (for 1W36, +18), delayed at Oxford (+28), arrived +26.
1P44 19:45 Great Malvern to London Paddington : held Norton (for 1W34, +26), arrived +12.
1P06 22:00 Hereford to London Paddington : held Ledbury (unsure why, +27), delayed Shrub Hill (+53), held Norton (for on-time 1W43, +62), arrived +52.