Here we see the importance of scouting. I don't know if you knew his army was entirely mounted, but if you did, your stack composition should have been very different.
No matter what, you should build way less longbows. In the latest save you posted, I guarantee that nobody will attack Tianjin, Macau or Cherokee. They don't need any strong units for defensive purposes. For this particular war, I'm pretty sure I wouldn't have built a single longbow (quite often I don't build any at all in a typical conquest game). Pikes are much stronger defenders against their mounted stacks, so a couple of those are good to have here, but otherwise just build offensive units. Keep your stack moving forwards at all times, wounded units stay behind to heal up and at the same time defend the latest city you conquered. They usually only target the closest city, which mostly is the latest city you conquered, so no need to keep stacks around elsewhere. You have to be a bit more careful early in the war if you don't know where their main stack is, but once the initial main stack is gone, they'll only have some small stray stacks that target the closest city.
A treb stack like that should never be hanging around idle in a city. As soon as one city falls, your siege immediately moves towards the next city to bombard. Once the AI stack is down, your siege only need a few defenders and can move while the bulk of your melee units heal up in the captured city. Oh, and about the trebs, giving a few accuracy promotion is fine, but the majority of them should be CR only. CR3 trebs are awesome. Now you'll never see any of those as all of them have accuracy.