This is really works as designed, considering the number of players playing China is going to be a small percentage of the total number of Victoria games played where the human player is ENG or both ENG and CHI are ai-controlled. The event system is designed to reflect most likely results in the vast majority of games, hence it lacks many alternative-history outcomes to conflicts.
Now, there is an issue with the peace settlement mechanism, in that especially colonial wars (which the Opium War is) can drag on forever because War Exhaustion accumulates much more slowly. This is especially the case where the military differentials between the two nations involved (a civ and an unciv) makes the civ nation more determined to make a victory, since the opponent is, on paper at least, much weaker militarily. The developers are looking into adjusting these issues so that colonial wars do not stretch on ad infinitum and make it more likely that in situations such as that which you are in, the AI nation will make peace. However, how long it will be until the next patch is an open question, given the large number of pots boiling furiously in the Paradox kitchen.
For now, the best solution to this is to either use the neville cheat to end the war or develop a user-made event (there are a couple in the current main discussion forum for Victoria) to end the conflict. However, the developers have historically been loathe to include ahistorical-outcome events in patches (or in fact any new events at all) since the solutions to these situation, which affect only a minor percent of total games of Victoria played, can be resolved by the players themselves. So I would say the likelihood of a new event to reflect a Chinese victory in the Opium War being included in a future patch is slim.