I think he does, since some of his Pokémon will suddenly know moves that they didn’t show before, like his heracross learning sleep talk, hyper beam, and focus punch, or his pignite learning brick break, gliscor learning stone edge, charizard learning dragon tail, palpitoad learning sludge wave, etc. Its too much to just write these off as learning naturally. Heracross forgot focus punch and learned hyper beam during the sinnoh league, where it also showed that it learned focus punch and sleep talk.