If you are using a regular Hubspot form intsead of a Hubpot Pop Up form I imagine you would need to use the Hubspot contacts API to grab the contact's information by their user token and check if they are in the partilcuar list you want to filter by.
To show the pop-up form only to people who have not yet completed a form, you can use the built-in targeting. Based on whether someone is in a list that you have chosen, the pop-up form is displayed or not. For more information about targeting, please take a look here.
Regarding autoclose after the form has been filled in, this is not possible as standard in HubSpot. Hopefully someone from the Community will respond who has more experience with this topic.
Please let me know if I can help you any further with the first part of your question!