Hi Bex,
Can you get someone else to ride/lunge him and see how he goes? That will both allow you to really watch his action, and also get confirmation of whether you're part of the problem

.
The other thing I'd do soon is get his back & saddle checked. In order to canter happily, the horse needs to be able to bend/flex to the inside and step under will with his inside hind. Even if his tack is just fitted & brand new it's worth getting his back looked at by a physio - something as silly as rolling on a stone may cause problems

.
Once you've (hopefully) established there's nothing wrong, I'd work on his general flexibility. You can do carrot stretches from the ground and serpentines and lateral work under saddle - they'll all help him to get more supple, which should help him strike off correctly. You'll probably also notice he's stiffer on one side (my guess is he'll find it easier to bend to the right than to the left). Try and be aware of it and don't force him to do more than he's willing to offer or you could make it worse

.
If none of that helps, I did know a horse that had a complete mental block on right canter. He'd HAD a sore back (sacro iliac) that had been fixed and he was good and supple, but in his head it was going to hurt so he wasn't going to do it

. The only way anyone could get him to canter on the right rein was to get him on a nice circle in trot and then push him over a small jump - he landed in canter with the correct lead every time

.
Hope that gave you some ideas