OnEquip only works on the item it is attached to, but maybe you could use OBSE to check, somehow?
My immediate thought would be run a check in the first frame of MenuMode, and record all of the PCs equipped items, then keep checking throughout and if one of the first items does not match, or equal "0" then you (should) have caught the change.
GetEquippedObject may be the Command to use.
http://cs.elderscrolls.com/constwiki/index.php/GetEquippedObject