Hi, welcome to the Horse Forum.
Your problem is a very common one. It comes from pulling too much on the reins and pushing too little with your legs.
If you want to teach a horse to make 'honest' circles (or straight lines), they MUST stay between your reins and legs. The horse that is pushing out on the 'barn-side' of a circle is pushing out against both the rider's legs and the against the inside rein.
The way to correct this is to teach 'leg yielding' exercises and to stop pulling on the inside rein when he is trying to drift out. Make the horse 'reverse bend' from your outside leg when you are on the barn-side of a circle and exaggerate his bend with an inside rein and the inside leg when he is on the far side of the ring. This is where a horse wants to 'drop his shoulder' and lean in. Very quickly the horse become tickled to stay between your reins and legs.
When I ride a horse, the instant the horse pushes the slightest bit against my outside leg, I 'drive' him very hard half way across the ring with that outside leg. I will gather him up tightly with the reins and keep his head to the outside and drive him over pretty roughly.
Like anything else, they correct so much better when you 'over-correct' them instead of nagging and pecking at them. When you over-correct the slightest mistakes, they are just so happy to comply with your 'lightest' aids. They are a lot happier in the long-run.