Problem with all that is a faction that gets stronger than the others will get to pick all their wars and nobody else will declare on them. This is a recipe for snowballing.
Take Khuzaits, they will start the game and usually take a castle and maybe a town from the imperial faction that borders them. Even if that faction accepts a tributary peace, they are going to be weaker than their neighbors, which means they are likely to be picked as the next target for factions looking to declare. At the same time, Khuzaits just got stronger, stronger than their neighbors, and this means they will get to prepare in peace, building their economy and training troops, and pick the weakest to attack.
You can't just combine a bunch of boolean conditions and expect to have a good result, there isn't enough variation. I would say the way to do this is by assigning scores to a bunch of indicators, like amount of settlements (= recruit output, army replenishment), current army size, a bias for ongoing wars, a bias for potential threat (this would be targeted at stronger factions, to motivate weaker factions to band together and attack a stronger neighbor, kinda like the "great power" for Total War games) and in the end, measure it against a min score required to declare.
I don't really think constant wars are the real problem, the problem is that if there are no wars there isn't much else to do once you are established with plenty of money and troops. I usually abandon games after I start defeating lords and having to wait because towns no longer have money to buy the loot.