You can create a reset button by adding a microflow trigger. In the microflow you need one change activity setting the values to empty. You shouldn't commit this change, but check refresh in client.
Abort on validation errors should be set to no on the microflow trigger (which is the default).
I hope this helps!
You should use the rollback object activity. You might need a refresh (empty change with refresh on true) activity afterwards.
What you could also do is create a new emtpy object, link all relations of the old one to the new one and then delete the old one. This solution however scales very badly as you will have to add every relation separatly and thus each new relation will have to be added manually.