Well, this one has been done to death, but here goes. If you're a Sorcerer, there are already a few options out there. Prestige Classes, use a lot of Wands, whatever.
I've made a couple Feats for my campaign that have seemed to work pretty well. Here's one you could use; I'm doing it from memory, so the wording isn't even close, tweak as needed, and add whatever prerequisites you want.
Altered Repertoire
(Bards or Sorcerers only)
Normally, the caster's CHA bonus increases his spells per day. With this Feat, his CHA bonus increases his spells known instead. Only his "permanent" CHA is affected this way; "temporary" CHA due to spells (positive or negative) or items provides bonus spells per day as if his base CHA was 10. You still use your full CHA (items and spells included) for skill modifiers, determining what level of spell you can cast, and so on.
You can't gain a known spell of a level you're not capable of casting yet, same as before.
For example, take a Sorcerer with a 20 CHA and a +6 Cloak of Charisma. Normally, this would give him bonus spells per day for a CHA of 26: 2/2/2/2/1/1/1/1. With this Feat, he'd have 2/1/1/1/1 extra known spells (the CHA 20 line), and 1/1/1 extra spells per day (the CHA 16 line for a base of 10 plus 6 for the cloak).
Effectively you're trading a large number of spells per day (some of which will be high-level ones) for a smaller number of known spells (most of which will be low level).