Make the bookings online, unless you need to maintain some flexibility. Seats will be harder to get and more expensive closer to your travel dates. In addition to the companies you've mentioned look at Golden Myanmar (http://gmairlines.com/), which has departures from Yangon at 10.30 am rather than at 6.00 am as the others do, with fares from 53 to 63 USD each way.
One alternative is overnight bus, and there are numerous services on offer. Generally, you can buy tickets for these just before departure for around 13000 or 14000 MMK. These usually arrive in Bagan at 4.00 to 5.00 am, and in Yangon at 5.00 to 6.00 am.
There is also an overnight train, which leaves Yangon at about 4.00 pm. You will probably need to book this well in advance.