All of the train routes have you changing trains twice: Once in Bristol and once in Stafford. Often in cases like that you can get cheaper advance fares by splitting off one of the legs and booking in separately, and this is no exception: From Bath to Stafford, you can leave as late as 12:36 for GBP 26.80, and Stafford to Liverpool has departures throughout the day for GBP 4.00. (You don't save any extra money by splitting up Bath to Bristol and Bristol to Stafford.)
Another option would be to take the train partway and the coach (i.e., the bus) partway. For example, take the train from Bath to Birmingham, leaving at 13:00 or 14:00, for GBP 18.10, then take a coach from Birmingham to Liverpool (a direct route that takes about 2.5 hours) for around GBP 6. (The Birmingham coach station looks like it's about half a mile from the Birmingham New Street train station, so you'd want to leave yourself plenty of time to get from one to the other - even if you decide to spend some of the money you've saved on a cab).
All of these train schedules and fares I found at nationalrail.co.uk, and the coach fares at nationalexpress.com. You can try playing around with both those sites to see if you find anything that works even better.