At a protocol level is there anyway to embed a return address to allow a transaction recipient to send funds back?
No, but there's nothing preventing it - either.
We have the TX-extra data field which could be used to embed a return address. For example, you could store an encrypred return address. However, how does the recipient know that those apparently random numbers represent an address? So, there needs to be some convention amongst supporting wallets on the method to write and recognize this.