You're asking for which is more powerful - is that really what you care about, or do you just want an interesting character? The number one rule of multiclassing is "never lose spellcasting levels." You've already pretty depowered the character as a Rog3/WW1 even with Magical Knack. I imagine none of the heavy CharOp folks have answered this question yet because your initial build has already provoked them into running about their residences screaming like enraged howler monkeys (rogue, 1 strike; losing spellcasting levels, 2 strikes). If you're looking for superpower, the train has left the station. But if you just want an interesting character to play, read on (though you really should specify what it is you want your character to be able to do/be like...)
In isolation there's a legitimate sorcerer vs witch debate, but if you're a third level rogue who has taken one level in witch, taking anything other than more witch is a severe power compromise - the "third strike." You're getting +2 CL in one class from Magical Knack and then if you were to switch, effectively taking -1 spellcasting level - pretty much losing as much as you're getting. So in this case, "definitely Witch."
As you move on, instead of Sorcerer I'd stick with White-haired Witch (seems like it synergizes well with rogue anyway), or go into Arcane Trickster after a couple levels in Witch - it'll keep full casting progression and is designed to highly synergize with rogue. But never lose a spellcasting level again. Look at it this way, if you were to switch to Sorcerer and be like "woot I want to throw spells", at level 10 you're barely going to be throwing fireballs when normal level 10 spellcasters are really melting faces.
There was a character in my last Pathfinder game who was a Rogue 2/Shadow Oracle 9, that worked out OK (he had a limited times a day super backstab ability and had oracle-boosted stealth stats) so it synergized with rogue well, plus invisibility and major image). So you can multiclass, and even use rogue, but definitely stay away from even more multiclassing. Pathfinder made specific design choices to back away from 3.5's "combination of 6 classes for optimization syndrome" and usually staying single-class is as strong if not stronger than a combo, and the more combo you put in generally the greater a disadvantage you'll have over your comrades.
Best Answer
By RAW, only leveling.
Base Attack Bonus is a class feature, and it changes when you gain a level in some class.
Though there are prestige classes that advance spellcasting AND base attack bonus simultaneously, for example Eldritch Knight. Take a look around, there should be more of them, at least in 3.5 there were.
You also might want to adapt Battle Sorcerer class variant, which has a cleric BAB progression.
From the houseruling point of view, consider this: most classes and prestige classes are already kind of balanced in terms what abilities do they offer. Sure, there are less powerful and more powerful abilities, but generally speaking they are already fine, at least in BAB department. Surprisingly enough, prerequisites are also often well-written.
Now, we must also consider that the Arcane Archer was designed as a master of ranged combat (hence the high number of feats and BAB requirement), who dabbles in arcane archery. Sure, one might houserule the BAB requirements away, but that ceases to reflect the original design, so I would advise agains that.
To sum up, a balanced solution would be either