A couple of observations:
1 - You might want to verify that your environment is up to date: What version of IIS, what operating system, what version of Access, and what version of the ODBC driver you are using. If you are using a current operating system and IIS, and the Microsoft.Jet.OLEDB.4.0 provider, I am doubtful that your problems have to do with using the same connection to do several database actions.
2 - The issue of the connections remaining open most likely is not due to "re-using" the same connection, but perhaps that you are not using explicitly created connections. If you are passing a connection string in to the recordset.open method you are implicitly creating a connection. Eventually the connection will time out, but if you have a high volumn site it is possible that these timeouts aren't happening quickly enough and you run out of available resources. The Jet database provider and ODBC drivers do not support connection pooling, by the way, so as far as I understand there is not going to be any recycling of the connections.
I advise making sure you are using the Microsoft.Jet.OLEDB.4.0 provider, and then always use an explicit connection that you close when you are done using it.
Woody Z
http://www.learntoprogramnow.com