Who said that Cheren does have healing powers? The most logical explanation would be that he uses Potions and such to heal your Pokemon; the game simply doesn't say so to avoid overcomplicating things.
As for why they do this in the first place, it is because the game may be considered too challenging if they didn't. Take the scene at the end of Mt. Coronet for example; you just had to do a double battle with two Galactic Grunts, and another with the two Galactic Commanders. Wouldn't the battle with Cyrus later on be too challenging if your rival hadn't healed your team beforehand?