It's a ball python, it's a male, it's 5 years old, it's breeding season......that's what they do.
People do not realize that in captivity those animal are overfed and that fasting for a mature male it normal this time of the year.
Based on his weight which should be good considering the age it could last 6 months to a year.
A tip try changing thing around, downsize the enclosure, that's what I do with any animal that fast for over 8 weeks and it usually get them back to eat within a week or two.