Snakes don't inheriently smell bad unless they musk for self defense...not something you'll see from a ball python.
Given that, I would suspect the cause is something that your snake is crawling through.
How often are you cleaning his enclosure? What are you using for substrate? Why would he have a lot of oppurtunity of crawl around in his own pee if you’re keeping up with his husbandry?
Have you tired cleaning him with unscented baby wipes. They work wonders for cleaning off anything he may have crawled through.