I have an idea for this-
Your best friend doesn't want to fight you, and instead wants to go with you.
you train your pokemon along side them. And every time you go to a new city, they fights you to test his pokemon. If you lose, they wouldn't take your money or anything. If you win, they will congaulate you, rush to the pokemon centre and heal their pokemon. When you get to the end of the game, they will share your place as the champion