I think the best way would be to make horse as a parent and human as a child during the join process. In that case I would like that all horse animations (there are 3 of them - idle, walk and run) would remain as they are, while I can lose human animations, as I will need different ones for it. I was also thinking to make human root bone as a child of one horse back bones, that when horse moves up and down it would move entire human mesh together. It would be also good to keep the same weights that human bones would not start deforming horse mesh and vice versa.
I tried to use Ctrl+J by selecting various combinations between bones and meshes in object mode, however, I noticed that it messes up scaling and rotation of the child object. So I was wondering how it would be possible to properly join these models to create a rider?