It think it entirely impractical to 'legislate' to force train companies to provide a train rather than alternative transport on the last train. As has already been mentioned, there are lots of reasons why they may wish/need to do this. There is already laws in place about provision of alternative transport. A bus/coach might take an extra hour from London to Birmingham, but then the train could be equally delayed. It is one of the many jeopardies that travellers have to put up with I'm afraid.
Government now control the railways. They are not going to legislate something petty which is going to make their life difficult and (as some posters seem to dream), the provision of lots of spare staff and trains to cater for every eventuality. Dream on, it is too expensive.
What is the last train of the day? If I hold a Portsmouth-Kyle of Lochalsh ticket I think that is the 5.23am from Portsmouth to Waterloo? Bearing in mind every possible ticket origin and destination, there must be a high proportion of last trains for one journey or another.