I will leave some notes about my findings here in case anyone else tries to solve this problem.
So far, running FFileHelper functions in an Async Task to save data to disk is working great. I haven’t run into any race conditions or experienced any crashes. I am passing the Async Task a reference to a bool that it sets true when beginning work and sets false when done, which is checked in the calling function to prevent it from running the save to disk task again before the first task finishes.
You can learn more about how to use an Async Task here:
Will post another update if I run into problems with this method and/or come up with something better.