In an InstallScript MSI project, you should take the MSI approach. Create an auxiliary folder (for example adding it to the Files and Folders view), and add your files to it. Make sure to find out its directory property (something like NEWFOLDER1; make sure it's all upper-case). If you want, you can edit the Directory table to make this a child of TARGETDIR, but that's optional and can result in files being placed under [WindowsVolume] if the registry search fails, so it's probably best to leave it as a child of INSTALLDIR.
Then if you can locate the directory before costing (i.e. before CostInitialize, which OnBegin would be), you can set the property (e.g. NEWFOLDER1) with a System Search, SetProperty custom action (type 51), or MsiSetProperty(). If you must find it after costing, you'll need to use either a SetDirectory custom action (type 35), or MsiSetTargetPath(), as the property will no longer update the directory.
This way Windows Installer will track the file location for you and uninstall should work properly.