Personally I think advances shouldn't exist and walk up fares should just be drastically reduced, but there is next to no chance this happens.
Realistically, advance fares should only exist on long distance services, which would be Avanti, LNER, EMR (London to Sheffield/Nottingham only), GWR (only IET operated services), XC (only services using 220/221s) and TPE. Certain journeys on these services should also not have advance fares available, such as London to Milton Keynes or any journeys between Coventry, Birmingham and Wolverhampton.