You shouldn't rely on your weapon for charm slots, you should look for that mainly in jewelry and armor pieces. It's not hard at all to get 2 rings and an amulet with 5 charm slots each! Actually you pretty much have the amulet guaranteed especially if you're a mage, because you can get it from the Nobleman's quest since you have no use for a dagger or a sword. You also find "Amulet of glory" on your way to save Mardaneus, which can have 5 slots if you're lucky (or if you reload a few times). And you also get a nice ring from Verlat, and so on and so forth, you get the point.
The "what if I find a better item and waste my charm" problem is resolved by using charms with items of corresponding quality. Early on you put low quality charms in "low quality" items (like the armor from George's armor display, for example, you can put blue charms in it - the orcs around Aleroth drop blue charms). Then as you get up in level and start finding better items, you'll also find better charms (Kistandalius sells white charms all the time), so you'll put those better charms in the better items, and ditch the old inferior stuff without thinking twice about it.
While doing this you should keep in mind that it will rain gold charms in the wastelands, so you should save your best stuff for the wastelands (like Pieces from the Dragon Armor, or whatever you think deserves gold charms in it).