The "Compare selection" events are running all the time because they're simply running a comparison. There are two solutions to get what you're wanting.
1. Add "On selection changed" events(note that this event is a trigger) for each of your lists, then make your existing events -- the "Compare selection" ones -- subevents to the relevant "On selection changed" event. This will make it so that you're only comparing which item is selected when the selected item for the associated list is changed.
2. Add "Trigger once while true" to each of your current events. This will make each event run only when the condition has changed from false to true.