I believe this.form.reset is in fact resetting your form, but the trouble is, when the "Quote List" button is pressed, to call the controller action showList, this is SETTING your values on the page to their variables in the controller.
For example:
Form is blank (text value in controller empty)

Enter text (text value in controller empty)

If you click reset here, the text area will be reset to nothing.
If you click Quote List here, then as a commandbutton this will SUBMIT your page to setValue() and it will put "hello" into value.
Therefore, the page, still looks like this

but now value = "hello" if you click "reset" the HTML form is in fact reset, but TO THIS value. If you alter the text area (no page reloading has been done) to be this:

and then click Reset.. it will reset the field:

Therefore the problem is not with the
this.form.reset()
not working, it is to do with what the QuoteList button is doing to the state of the page/controller values.
One way to beat the submission problem would be to remove the "action" attribute from the second button, Quote List, and instead use it to reRender a block of the page, in which you can re-trigger getters to load new lists of items, if this fits your functionality?
So your snippet in the question could become something like:
<apex:form >
<apex:inputtext value="{!value}"/>
<apex:commandButton value="Reset" onclick="this.form.reset();return false;" />
<apex:commandButton value="Quote List" rerender="redrawArea" />
</apex:form>
<apex:pageBlock id="redrawArea">
{!value}
</apex:pageBlock>
You then have your logic in the getValue() method (remembering best practises about what should go in a getter of course!).