So, until Aspyr has an opportunity to fix the engine to look for lowercase filenames in workshop mod dirs, I'd say that the file-copy method is certainly the best bet for getting this to work. Given the behavior of the lowercase-filename normalization, I'd guess that it should be solid, and you wouldn't have to worry about a file being "missed" or whatever.
Also given the behavior of file-loading, it looks like you've got two choices for where to copy the mod files: 1) on top of KOTOR2's "steamassets" dir itself, or 2) inside a "steamassets/localized/english" dir (The language dir itself seems likely to be different depending on your locale, so folks not running it in English might have to do more investigation). In my case, running the English version of the game/mod, it looks like using the "localized" dir would be preferrable, because that dir doesn't exist on the base installation, so cleaning up the mod after the fact would be much simpler. To install:
Subscribe to the mod
Launch KOTOR2 at least once, so the engine lowercases all files in the mod
Create $STEAMROOT/SteamApps/Common/Knights of the Old Republic II/steamassets/localized/english (the "localized" dir itself did not exist for me)
Recursively copy the contents of $STEAMROOT/SteamApps/workshop/content/208580/485537937/ into the dir you just created
Unsubscribe from the mod
At that point, you've got a steamassets/localized/english dir which will only contain the mod files, and nothing else. If you wanted to remove the mod (after this bug gets fixed, etc), all you've got to do is remove that "localized" dir. This has the added benefit that so long as nothing gets officially added to the "localized" dir in the Steam manifests, updates to KOTOR2 won't end up breaking the mod. I assume that possibly other localizations could make this more problematic, though - it might only be this simple if you're running the English versions.
If you instead copy over the base "steamassets" dir, removal of the mod at a later date is a bit more problematic. Most of the files provided by the mod are new, so you could just keep a text file with a list of the files around and manually remove, but a number of them are actually "overridden" by the mod, so if you copy over directly into "steamassets" you'd need to make sure to verify your game cache, etc, to fully recover those files. For reference, here are the files which are overridden:
lips/301nar_loc.mod
lips/610dan_loc.mod
lips/605dan_loc.mod
lips/101per_loc.mod
lips/303nar_loc.mod
lips/650dan_loc.mod
lips/602dan_loc.mod
override/handmaiden.dlg
modules/702kor_s.rim
modules/401dxn_dlg.erf
modules/702kor_dlg.erf
modules/401dxn_s.rim
dialog.tlk
streamvoice/702/rev_end/702rev_end002.wav
streamvoice/702/rev_end/702rev_end003.wav
streamvoice/303/zezkaiel/303zezkaiel106.wav
streamvoice/301/tienn/301tienn006.wav
streamvoice/605/ralon/605ralon010.wav
Anyway, I did test out copying the mod into steamassets/localized/english, and it worked beautifully for me, so that might be the best bet at the moment.