Why did you call? Was it because you had history with him that he bluffs? Or was it because you were too tilted to fold KK?
Anyway I wouldnt cbet full pot on this flop, or maybe not even cbet at all. There's too much room for him to check-raise jam with draws and cooler hands that force us to fold. If he bets the turn I probably call one street in case he's just doing it with a draw that he most likely checks on the river. If he bets on the river it's a reluctant fold since fish will do this with hands like J7. The thing is, even if he bets the river with J7, he doesnt see it as a bluff in his mind. He's just betting because he has a pair and you checked. It sucks but thats how fish play. You'll get your value the next time the board runs out J9Q23 and he happily calls all three streets.