1. It's happening because the PHP strip_tags() function returns the content between the tags. I've implemented a regex check to remove extra CSS and JS in case it finds any, but I think it only executes when the Run shortcodes found in post content option is enabled on the Advanced Options panel.
If that doesn't work, let me know. In that case the only option is to make direct modifications to the search code. I will try to re-create the problem and suggest a change to force removing the script tags.
2. It's definitely not possible. Custom table search is always been on and off the table, but there are several yet unsolvable issues. The problem is not exactly the searching itself, but the processing of results – finding the proper image, getting the url to the result item etc.. These stuff are usually not stored in the database for any plugin and must be obtained with a function call, or instantiating an object – it differs for each and every plugin.Best,
If you like my products, don't forget to rate them on codecanyon :)