Disconnecting module functions

So I found that I have a problem with that every time I use OOP I end up using a module more than once, this makes modular functions like mouse button detection inside the OOP script acts up more than once every time it’s called

What way could I mitigate this issue?

With OOP, I assume you mean a module with a class function, rather than constructor.
You will have to make your own Disconnect function. In this, you need to set all your class values to nil, destroy any references, and say self=nil.