In Diamond & Pearl episode 2 (episode 468 overall), "Two Degrees of Separation", there is a scene that pretty well summarizes the situation with Giovanni, Jessie, and James:
Jessie: Greetings from the Sinnoh region! Now that we've conquered Hoenn for you and yours, we thought we'd do the same right here!
James: Don't you mean Hoenn conquered us?
Jessie: [Grabs James] I'll conquer you!
Meowth: I've got a plan that'll put the best Pokémon Sinnoh's got right into your deep pockets!
Giovanni: Though your plans won't buy me a cup of coffee, I have wanted to set up shop there. Do your best.
Jessie: Don't we always?
Giovanni: That's what I'm afraid of. [hangs up]
Jessie: Hear that? The boss is counting on us to give Sinnoh the Team Rocket mojo!
Meowth: We'll blind the guy with tons of top-shelf science!
James: Then we can afford a summer cottage of our own!
[They say a few things in celebration, then we cut to Giovanni]
Giovanni: [to Persian] Remind me who those three buffoons were, will you?
So the reason he doesn't fire them is:
- He doesn't even care enough about them to even learn their names
- They go to regions where Team Rocket doesn't have a presence. This has the double benefit of spreading awareness of Team Rocket and keeping them away from his operations in other regions (which they have messed up multiple times)
- There is a very small chance that they'll actually succeed, and he has nothing to lose
I also speculate that Giovanni doesn't pay Jessie and James, or if he does it is as a reward for a job well done (which they of course would never receive). In episode 4 of Diamond and Pearl, one of their traps fails and Meowth says "Let's see what you build with two bucks." True, they use a lot of tech, but they are never shown to get a paycheck and when they have gotten money, it's been through odd jobs or James's family fortune. It seems they are just really good at repairing things on a shoestring budget.
And hey, if they are so absurdly loyal to Team Rocket and Giovanni doesn't pay them, then why not keep them around?