Currently, the plugin works with the database, not with the physical location of the files. Actually, it does not matter where the file is stored - it will index all the files that are in WP Media Library.
So the best way to index the folder with files - just to upload these files into the WP Media Library. Is it a problem to do that with your app?
Yes, it looks correct. I think there should be a better way to get taxonomy (using WP native methods). Also, I see a bit strange names for custom post meta names (MPN Number and MPN2 Number) - please be sure they are stored in a database like this exactly.
You can check your hook using Sandbox / Test Index. Just put the product post ID into the input and press the button. It should show you all cluster values, including 'sku' and 'product taxonomy'. Next, you can go to Edit one product and press Update to force WPFTS to rebuild index for this product. After that, this product should become searchable by sku and taxonomy.
If so, you can press Rebuild Index to rebuild an index for all products.