I've been thinking a lot about this and honestly, I don't think it would be that hard to implement.

My idea is simply make it to where certain roles can either improve their skillset or alter the role itself in a way. So basically, make it to where a Tank role can either sub a healing job or DPS. In doing so, it will lose certain job actions but gain new ones. And the new job actions wouldn't hinder the original job in any way (so if one chose to just play without a sub, they'd be perfectly fine.)

PLD + WHM for example would lose Clemency and Divine Veil but gain an AOE heal and a skill similar to Holy (Aoe) that combo procs from Holy Spirit.
PLD + SAM would unlock a trait similar to Third Eye that procs certain counter attacks when an attack is blocked.

DRK+ SMN would unlock hard hitting magic attacks like Shadow Flare and would be able to summon "shadows" that would stay on the field for a period of the time and attack targeted enemies but would lose attacks like Abyssal Drain and Dark Passenger.
DRK+ SCH would unlock a trait called "Dark Aether" that would make certain skills usable when stacked but would lose the Blood Gauge. Since this combination focuses more on being a tank/healer, it'd be more about defending the party and less about how much DPS you can do.

Both examples make it so the sub changes the job a bit to make it more efficient in DPS or healing. To avoid too many combinations or some that are more powerful than others, maybe make it where each role can take one other sub from the other roles that synergize the best with them. So PLD would have access to WHM and SAM, DRK would have BLM and SCH and vice-vsera.