First of all I'd suggest using
http://www.nationalexpresseastcoast.com/ which is where you end up if you go to
http://www.gner.co.uk/Enter the details and hit Search.
If you click on a fare at the top of the screen it'll show you which services that ticket is valid for in the lower portion. It also says:
"Only select a service if you want to reserve a seat."
I picked a random day 5 weeks in advance (Mon 23rd June) and entered Heathrow Rail to Reading Stations one way.
There are a bunch of different fares on that day, all on different routes:-
The £14.60 fare (Cheap Day Single) is only valid on trains where you have to change at Hayes & Harlington, and Slough.
The £29.60 fare (also a Cheap Day Single) is valid on those trains, plus the trains where you have to come all the way into Paddington and then go out again.
Given that the Paddington option takes a few minutes (sometimes 15 minutes) longer than the first option, and costs twice as much, it's not a difficult choice.
Again, only select a specific train if you want to reserve a seat on the train. If you do this then your ticket is only valid on that specific train (and you'd have to pay an excess fare to get an earlier/later train).
So no, you don't need to make a reservation on a specific train to get a cheap ticket.
Go to the website above, enter the details, search for tickets, pick the lowest fare that makes sense for you, note down the times of trains and where you'll need to change, don't select a specific train and click on the buy a ticket link.
P.S.
You might want to consider getting a cab to Staines (especially if you're coming in to T5 as it's only about 3 miles) and then the half-hourly direct train to Reading which is only £8.50 and can be bought on the day (i.e. you can't get it cheaper than that in advance).