I think the split at Didcot as suggested above is likely to be your best bet.
This means that you buy a Reading - Didcot Parkway Off-Peak Day Return (£6 - valid after 0900 weekdays and any time weekends), and a Didcot Parkway - Bath Off-Peak Day Return (£18 - valid after 0915 weekdays and any time weekends) for a total of £24. This compares favourably with a Reading - Bath return of £42. You can buy both tickets in one go at the ticket office at Reading (not from the machines).
Your train must stop at Didcot where you switch from one ticket to the other, which is roughly half of the trains, otherwise you will be liable for an excess fare. Make sure you check before boarding. You can remain on the same train from Reading to Bath as long as it stops at Didcot.
Prices will increase a little on 2nd January.