SFIV is well balanced, I think that's why so many of us continue to play it.
Although I must say that I think the epitome of the perfect character is Ryu. He's strong, fun - and if he's your opponent you truly fear when he has his Ultra guage, and there are things you shouldn't do (i.e, don't jump in, stay away from corners etc.) Yet, his Ultra does low damage because of this (maybe it should do slightly less)...maybe, maybe not.
However, Sagat. Sorry - he's 100 % bullshit. Don't tell me the fact that he "walks" slow is his weaknesss, because that's bullshit.
His tiger knee is the biggest problem. Comes out quick, good frames even on block, does decent damage, armor breaking (which is crap, because most characters have armor breaking attacks that have long starts ups and recovery). And it also can be used as an anti-air.
Nerf the tiger knee, give him Ryu - like recovery on his tiger shots (which is still damn fucking fast and annoying) and there is no reason why Sagat has 1000 + health. He should just have standard 1000.
Ken is also a good middle type character that represents perfect balance. If Capcom wants an agressive powered style set-up, they should try to focus on getting everyone to Ryu-type tier, or if they want a standard non-disruptive like tier set-up, go for a Ken/Viper middle approach. Meaning nerf the top characters, and improve the lower characters. Or - simply boost everyone up to ryu levels. Which is pretty simple. I.e, give Cammy an overhead - and bam, she'll shoot up. Give Viper regular 1000 health, and bam - she shoots up. Give El Fuerte a bit more power in his attacks, and he'll shoot up. There are ways to fix the characters without changing move properties or anything significant.