It's Toot.
All the way back when Harry was first summoning and using the little guy, Toot laid a minor curse on Harry, to "always be short of cash-on-hand."
So he can get money for a specific use, and pay it. But when someone unexpectedly demands a dollar, or a nickel, or somesuch... Empty pockets!
It's just such a minor magic, and so petty, that Harry hasn't spotted it yet.
Toot, of course, has long since forgotten.