The way this is supposed to work is via Menu > Check for Updates > Advanced Options > Change Storage Location ... . From there, you should be able to select either internal memory or the SD card, and then *all* of the downloaded data should go to the selected location. Is that the method you are having problems with?
That function has always worked for me, on four different Android devices and several different versions of Android (except for one time when I had a faulty (fraudulent?) SD Card that reported it was twice as large as it really was, and went haywire when its used space exceeded 50%).
Since iFly is designed to manage the storage location internally, I can see where trying to change that location via OS settings might cause issues.
Note that due to oddities in how Android deals with internal/external memory, you may have more than two options for your storage location. Typically, the duplicates are of the internal partition, and I think it has to do with legacy compatibility stuff, but I think it's possible to see duplicates of the external storage also. It should be easy to tell which one(s) is(are) the SD card by the info provided on storage partition size and how much of that is currently in use.