So, the situation for which I came up with the least elegant solutions for a wider inverse alignment was the ditransitive situation. This is a result of the factorial increase in rearrangements, obviously.
one argument: one possible arrangement
two arguments: two possible arrangements
three arguments: six possible arrangements
Having to have markings for six possible arrangements does feel mighty wasteful, even if you construct the markings from a smaller set of morphemes that combine to create the six possible syntactic role assignments.
A suggestion gleaned from IRC (thanks h13) is to incorporate the theme into the verb, but this of course only works if incorporation is a thing in the relevant language.
Now, one thing we may notice is that IO and Subject often may be of comparable levels of agency, animacy, etc. Of course, there's no guarantee that this would hold, but ... let's assume it does hold in this language.
One thing we could do is have the inverse marking on the verb only affect the relative order of two nouns (usually the two that are the least similar in agency/animacy/etc). The third noun, however, takes an explicit case marker. The verb then simply gets to assign the two remaining roles - and maybe it'd be nice with one extra marker for the verb for the situation when it's IO vs. Subj that are being inversed, or some other arbitrarily picked pair.
Thus we get, assuming man > bear >> fish. Notice that I've set the definiteness arbitrarily, but of course these different phrasings could possibly affect definiteness, i.e. maybe the case-marker tends to be drawn to definite nouns. Notice however that definiteness in this language is not quite the same as in English - unmarked is just that: unmarked, can be either definite or indefinite, marked is explicitly definite. :
man kill-DIRECT fish: a man kills a fish
man kill-INVERSE fish: a fish kills a man
no case markers:
man kill-DIRECT bear fish: a man kills a fish for a bear
*man kill-INVERSE bear fish
case marker present:
man kill-DIRECT bear-DAT fish: a man kills a fish for the bear
man-ERG kill-DIRECT bear fish: the man kills a fish for a bear
man kill-DIRECT bear fish-ACC: a man kills the fish for a bear
man kill-DAT.INVERSE bear fish-ACC: a bear kills the fish for a man
man-DAT kill-DIRECT bear fish: a bear kills a fish for the man
man kill-DIRECT bear-ERG fish: the bear kills a fish for a man
man kill-INVERSE bear-DAT fish: a fish kills a man for the bear
man-ACC kill-INVERSE bear fish: a fish kills the man for a bear
man kill-INVERSE bear fish-ERG: the fish kills a man for a bear
man-DAT kill-INVERSE bear fish: a fish kills a bear for the man
man kill-INVERSE bear-ACC fish: a fish kills the bear for a man
man kill-DIRECT bear fish-ERG: the fish kills a bear for the man
man-ACC kill-DIRECT bear fish: a bear kills the man for a fish
man kill-INVERSE bear-ERG fish: the bear kills a man for a fish
man kill-INVERSE bear fish-DAT: a bear kills a man for the fish
etc. (The remainder, of course, being the man killing the bear for the fish, wherein man-ERG, fish-DAT and bear-ACC occur. You can probably figure the verb markings out by now).
Personally, I prefer a system that omits at least one of the possibilities above - I wouldn't mind dropping the accusative or the dative altogether. Maybe have a system whereby accusative and dative are distinguished solely by discourse pragmatics or by some weirdo marking on the verb.
Maybe we could go even further and have a separate bunch of cases with somewhat restricted use:
two arguments high in the animacy hierarchy, one argument low: IO can take -DAT, SUBJ can take -ERG
one argument high in the animacy hierarchy, two arguments low: IO can take -DAT2, DO can take -ACC
roughly equidistant distribution: SUBJ can take -NOM, DO can take -ACC2
Anyways, I shouldn't be trying to fully exhaust the possibilities of weird things to do with inverse alignment - I just hope to show some examples of directions one could pursue within the world of inverse markings. So for now, I think the inverse marking spree I've been on suffices for a while.