In most gametypes gameplay is already very different between 16v16 and 6v6 matches, but you do kind of have a point there. Maybe some sort of system where cart speed is adjusted to the average rate of kills on the fly. That could not only speed up small matches, but also slow down matches of insane killing (think crits-only server on the extreme side) from ending too quickly. It would also serve to smooth out any sudden changes in team dynamics and might even be a way of handicapping the steamroll effect if you wanted to implement it based on per-team killing rate.
In any case, do you have some sort of graphical indication that the souls are being used as fuel? I'm too hungover at the moment to fully contemplate it, but is there some way you could move a graphic of some sort from where a player dies to the point of the cart so it looks as though the soul is being "fed" to the cart? Not only would that look cool, but it would add another layer of complexity to the cart's movement. When the cart were in hot-spots of lots of death, it would refuel much faster than when it was in more isolated areas. You'd have the effect that killing enemies near your cart would be more advantageous as their souls would reach it faster. Depending on the track layout, this could put the focus back on the cart somewhat.