If I book my flight through Expedia, can the airline make changes to that reservation (e.g. if I wanted to change my return date), or do I have to call Expedia directly?
Yes, the airline can make changes to a ticket issued by a 3rd party.
Whether they will make changes is a different matter.
In general, the ticket is deemed to be 'owned' by whoever booked it - generally either the airline itself, or a 3rd party travel agency. That party is the one that has been paid to issue the ticket, and is generally responsible for making any changes at least up until the start of the first flight.
So in general, any changes - at least before the start of travel - will need to be made by Expedia.
Some airlines do give you the option for them to "take over" the ticket so that they can make changes, however (at least in the US) they will generally charge you for doing this. eg, the United Airlines Contract of Carriage states :
American Airlines call it a "External Reservation Handling Charge", along with a US$25-35 fee.
This fee may be waived if you are a high-level frequent flyer, or potentially if you are on a high fare ticket - but often that's at the discretion of the phone agent.
You can always try calling the airline, especially as every airline has slightly different policies, but for something like a change of date of a flight I would not expect them to assist you without paying this fee. If your travel has already commenced then you might have more success.
According to Expedia's FAQ