Very interesting question, but I don't really think it has a solid answer to it.
Maybe it's just something inlogical, I mean, Link could have got Epona by something illogicaly ocurring with him, Epona and Malon and Talon... Also, I would like to remember the fact that, in the presentation of Oracle of Ages, Link is riding Epona without any logical method of getting her, so we can suppose that Link gets Epona in Majora Mask the same illogical way he gets it in [the presentation of] Oracle of Ages.
As for logical solutions (not so logical, actually), I do have a few of them:
- Link still has his strong friendship with Epona that he had with her as an adult as a child, not being affected by Zelda trasladating Link back to the past, though this logical solution is highly unporbable to be the correct one.
- Link already knows Epona Song as a child, and maybe he could have gained her trust and gotten some special permission from Malon and/or Talon to take her away.
- Talon likes the way Link is, and gives him Epona so that she gets an owner that can take care of her and let her run free through Hyrule Field.
- Malon, as we already know, loves Link and wants to give Epona to him.
- Link may have offered some rupees for Epona, won a race to get her, stealed her or ask to someone at Lon Lon Ranch to give him Epona for a while.
Meh, that's all the logical solutions I can think of.
Though the most probable logical soultion is no one really, and we do have to stick with the idea of this being something illogical, that Nintendo may not even have payed attention to.