This behavior is not what I would have expected either. I'd mildly prefer to see \:'s hyphenation-reset behavior changed. \% changes meaning depending on whether it's at the start or in the middle of a word, and your examples illustrate that it's acting with its beginning-of-word meaning when it follows a midword \:, which also seems incongruous (though necessary if the \: resetting behavior is retained).
Admittedly, if \% carries its midword meaning here, it's not clear what the sequence \:\% *should* mean, so this interaction needs to be carefully documented in any case.