I hate to hurt people's feelings, especially my best friends. When she talks to me, I have to cover my nose because the smell is so intense that I can't help but to tell her that I have something to do and that the conversation have to continue some other time. She brushes, but I don't think she's doing a great job at it. What should she do?

That's how I'd get my foot in the door, so to speak.
If nothing has improved the next time you see her, then just bring up the smell again, say something like 'I smell that same awful smell again. You should get it checked out, you might have tooth decay or an infection. Want some gum for now?'.
Ask her what her diet is like if it's not constipation then maybe she's sick. Has anyone else noticed the smell?
Anyway, tell her nicely. Be honest but, don't be rude. Just say "(Name) I have noticed that your breath stinks."
Wait for her response and go from there. I hope that you don't take this problem against her. Be a good friend and support her. Knowing that one has bad breath can hurt her self-esteem.
I thought about leaving a letter in her mail box a typed one.
I know that feeling!
My bf has bad breath.
At first I didn't want to tell him, but after I while it REALLY started to irritate me.
You have to either a) Work up the courage to tell him/her that she/he has bad breath -if they are a good friend they'll be happy you told them instead of embarrassing themselves to everyone when people are secretly trying to avoid their stanky breath
b) Get used to the stink? LOL
Also when you know you will be face to face with her offer her water. At least that weakens the smell temporarily. Unfortunately if she won't drink you need to arrange to be sitting at a distance.
Even if you are close (friendship wise), it is hard to tell someone that they smell. You just have to get it out fast and casually like it is no big deal but that they need to check their hygene. They will be embarrassed, not you.