Normally this just should work as expected.
So, this smells like a bug... can you file an incident in the Partner Portal (including a reproduction)?
UPDATE: as you explained it's not a bug... phfiew... you scared me ;)
I such cases (where the object events are sometimes necessary and sometimes not) I would avoid object events.
We tend to use 'validation microflows' (that return a boolean so we can check whether the commit should be stopped or not) and decide per ocasion whether it is necessary to execute the validation or not