If his lower body is sinking, it may be because his position in the water is off. Often kids have their heads up, and even when under water will have their head up higher than their chest. That causes the hips to sink and makes it hard to kick well.
Kickboards can encourage that posture. Try having him push off into a streamline with his face in the water, and then kick for as long as he can hold his breath. If he kick is better in that position, work on keeping streamline.