I quite agree - this is perhaps one of the weekest points about eZ. I would suggest a solution based on custom tags, e.g. a start form tag, different field tags and an end form tag. This would also make it much easier to put some design on your form - as it is now there are not many possibiblities to chenge the layout of the form
We have developed a "form builder" addon to eZ publish that we hope to have available via the eZ online shop very soon.
It basically allows you to define forms and have them included in a content type via a datatype. Form results can be emailed and/or stored in the database where they can be exported in CSV format.
More details at http://www.designit.com.au/solutions/form_builder
Is content entered into the form stored in the new attribute, or is it parsed into existing ez attributes?
Content is stored in a databae table. The form defination & results are independant of existing eZ attributes. A new datatype is used to link a form to a content object.