I like the effects idea, since they apparently can be checked faster than variables can be, and in AI every bit of improvement helps with mob AI.
An effect for highest damage dealer, for instance, could be modified through nwnx to include the amount of damage that it was, the creator being the current object that had done it.
The more simple damage dealer types could use the damage as a float to set the duration of it, and could be checked simply if it existed or not. I'm not as sure about this one though, as it would require manually looping through effects to check for it, which is less ideal.
Permanent effects that you swap the creator of, using those in combination with distances would likely be the most "realistic" target selection method.
For gear, or even feat altered hostility, I'd also go with effects. Activating the feat, or equipping the item, would apply the specific adjustment effect on the object, to be checked for when weighting targets.