how to prevent javascript from running again when an AJAX form is submitted
If Ajax reloads this part you are hiding, the marker once() has set is overwritten, also the show/hide status. Then you need a different approach, either submit the show/hide status, so that it can be returned by Ajax, or create a show/hide Ajax form element to have full control over it through Ajax.

If this is outside of the Ajax wrapper you can do this in javascript, but apply the jQuery selectors on context: 

$('#views-exposed-form-faceted-search-page .form-type-select', context).once('search-hide').hide();


See https://www.drupal.org/docs/8/api/javascript-api/javascript-api-overview