You need OpenIV to get the online horse files. You might also be able to find the horse you want on Nexus, the Bigger Horse mod includes a few of the online horses but these are all sized up to be around the size of a turkoman.
In OpenIV use the search function to find the .ymt file of the online horse you want, just search for the breed itself and extract the file that has your desired coat. This doesn't work for all breeds, searching for the gypsy horses for example won't get you any results so if that happens with your horse of choice, do the following:
Go here: https://www.rdr2mods.com/wiki/hasher/ enter the full ped name of the horse you want (in my case that was a_c_horse_mustang_blackovero) and hit the Hash! button, it will give you the hex. If you don't know the full ped name, you can find it here https://www.rdr2mods.com/wiki/ped-search/
Enter the hex you generated in OpenIV's search and extract the .ymt file that comes up. Save it to your desktop or something.
Now you need to decide which storymode horse you want to use as a base. Your online horse will have the same stats as the horse you pick as a base, so I went with the Dark Bay Turkoman because I think it's the best overall breed in terms of stats, has the war and race horse classification and I don't care for that particular coat.
You need to rename the .ymt file you extracted and give it the ped name of the horse you want it to replace, so in this example I would rename it to a_c_horse_turkoman_darkbay.ymt.
Then put this file into your lml/stream folder, go ingame and use a trainer to spawn in the storymode horse you used as a base. If you did it right it will show up as your online horse of choice, but the game will still think it's a storymode horse.
Hope that was clear enough. If not feel free to send me a message. I had help with this too the first time I tried to figure this out :3