I think you're going to like this one...
if you're savescumming anyway, this'll make it a lot easier. The quickest way to level-up without elapsing time in the game will be to go to a castle or a town with a prisoner held captive, attack the guard, slaughter the watch, quicksave (you can always savescum if you get hurt), head into the castle, come back out and repeat. It's usually ~1000exp each time, plus it'll make you rather devastating quickly with that crossbow (although I prefer bows tbh, putting power draw at 4 or 6 for a nice Strong War Bow really isn't much of a sacrifice if you're leveling up a lot anyway, and will make you worth dozens of Rhodok Sharpshooters in my experience). You'll obviously want a powerful one to make sure you can take out the guard with one shot to the face...
And of course doing this, you deplete the castle's defense. I imagine you can empty an average castle in 20 minutes of doing this, and since you kill the prison guard each time you'd get more experience than if you'd killed everyone in the castle yourself in a siege. You'll be level 30 in no time. Well, relatively-speaking. If you go straight INT/training (and make sure you also had points in weapon mastery so you're gaining good crossbow proficiency) you should be able to pull your 30 INT/10 training. *Then* all your heroes, lower level than you as they are, will fly through their lower levels; give them training, etc....
Of course, it only works in castles and towns that have prisoners, and some of the towns are extremely difficult to attack the guard and not get hurt bad, so it's not like you can wreck any holding with that.
Wars will be declared for factions to try to take these poorly-defended castles. Battles will be fought, armies depleted, more lords captured and plopped in a dungeon... won't be long 'till you only face armies of recruits, I'd figure. (I've never taken any of the advice in this post as far as I think you'd have to, so I can't guarantee results, but I think you'd get them.)
For that matter, on the subject of savescumming, you can tend to savescum in mornings if factions are at odds and considering declaring war or if they end a war seemingly early, to try to get more factions at war with more people, to deplete their armies and get lords taken prisoner, and you can savescum every time lords lose in battle until they get taken prisoner...
I mean, if you're savescumming, you may as well go all the way, right?
I'd also recommend having an alternative army of Swadian Knights to be able to end those groups of 1000+ you'll occasionally find... winning one such battle will pretty much permanently put that faction out of business if you're going for a win in a year.
I've also wondered what would happen if you put a thousand Khergit Lancers into a castle, train one of your starting low-level heroes straight in INT, give them pathfinding>spotting>whatever else (7 pathfinding shouldnt be hard), make them a vassal, and then transfer those thousand lancers to their party, and set them loose. Not sure quite how fast they'd move, but I figure they'd be able to chase down almost any lord and crush them, and lose very few troops themselves. (Lancers are worth a lot more in autocalculated battles than in real battles, in my experience... khergits actually get an advantage over everyone in getting their top-tier units earlier and having them move faster, although I really have no idea how it's all weighted in autocalculated battles. Pretty sure they're worth significantly less than a Knight, but because they're trained faster and move faster, are "worth" about as much for an NPC imo.)
Also, I see you saying you need to use your Sharpshooters in melee to get them knocked out for another wave with fresh ammo. I've never used the function, but I noticed that an order got added to the combat commands to tell your troops to retreat... I've never used it so I'm not sure how it would work, but I'd think you could just order your wave of archers to retreat until a reinforcement wave arrives. I think it was actually intended that way... but like I said, I've never even used it.
(Are we up for totally abusing the AI, too?)
For sieging I'd consider carrying different sorts of equipment depending on who you're fighting. Some of the troop types can be taken out without ever losing a man... like I said, I prefer bows, and would usually start with 3 large bags of bodkin arrows, and give arrows to all my Heroes and use their arrows that they miss... I'll probably take out 150+ troops myself, but if you're using Rhodoks, you'd probably want to stick with a crossbow for the same reason; but some of the castles, once you've taken out the archers, you can stand on the top of the ladder with a pike and stab everyone to death. Or another thing you can do, right at the start of the siege, is tell your units to hold their fire, order a small group to the base of the ladder, off to the left side, right up against the wall, and then order your units to open fire... the shielded guys in the wall will all face to the side and down at the closest units, the ones at the base of the wall who are screaming due to their proximity in battle, and even when getting shot they won't look away. (To the left gives you the best angle against their shields.)
I never really use Rhodok units so I've gotten more familiar with going about taking castles the harder way... arranging rows of shields in front of me, and shooting hundreds in the face myself. Once my party and I are pretty leveled up I can usually take a full castle or town having maybe five heroes and a dozen troops knocked out or killed, at worst, and that's usually with Swadian Knights or Khergit Lancers (I use the Lancers if I'm fighting Swadians for morale issues... which is another thing to consider, if you rely solely on Rhodoks you'll have morale issues when you start slaughtering Rhodoks.)
Also, if you only want some companions so you don't have anyone leave, the Firentis/Alayen/Deshavi/Jeremus/Ymira/Baheshtur etc line-up, statistically/min-maxed-speaking, are by far the best way to go. Alternately, you could let people leave and pick them up again. Or, the way you'll be playing this... you can always savescum every morning to keep them all in your party.
By the way, I don't usually recommend raising them the same way others. I recommend Bunduk for Trading because he has the highest base charisma: shouldn't be hard to put him at 18CHA / 6 Trade. (Or there's probably another lower level hero who starts with fair charisma.) You don't want Artimenner as an Engineer, because he starts at a higher level and causes contentions with the better heroes you'll pick; I usually use Alayen or someone else... again, it's not hard to give a hero who starts at a low level enough points in intelligence to exceed anyone else who starts with a particular skill. For your playstyle, you might want to make someone like Ymira into an ultimate tank, with straight STR/DEX, ironflesh/shield/athletics, with lordly plate armor, winged helmet, and whatever else, and four reinforced board shields, or whatever those largest ones are (so she has one in front of her and one on her back, even after a shield breaks and she pulls another), and have her be your go-to troop to station right at the bottom of the wall to make the dumb AI enemy look away. I've never done that before, but I think it would be funny... I bet that would work pretty well in any battle, even one in the field against archers, you just tell her to walk out alone at the enemy troops, and stand there and absorb all the arrows... gosh that would be funny to watch.
By the way, I once went through all the stats of the heroes... plenty have missing points, and I think one (Baheshtur?) has more skill points than he should have for his starting level/INT (guess you know which one of them has actually read a book, eh? not Jeremus!). Some of them, like Marnid or Matheld are just terrible in where they have their skill points put (7 points in inventory management on a champion that starts at level 11 or something with 6 intelligence? great, forever useless.)
I think that's all the advice I got. Good luck. \: