What my BP cheat does is override the setting of the BP in game, at calculation. That is to say, when you go to spend some BP, if you have the cheat enabled, it forcibly passes in the maximum value of 9999.
So I don't know what you mean by, "Goes to 0", as the only way the count would be updated after enabling the cheat, is upon an add or subtract event.
I know the code works correctly, as I went and did some battle tower fights to earn BP, then after getting 3 BP, I enabled the cheat, went and spent 1 BP and it was set to 9999.
As an aside, you can just max your BP by editing the save using PKHex.