How to get rid of the default field markup
As with pretty much everything like this in Drupal, the answer lies in overriding theme functions/templates. 

That markup is added by the theme_form_element() function; to override the output for that function simply add a function like this to your theme:

function THEMENAME_form_element($vars) {
  // ...
}


And change what you need to from the original function (e.g. replace &lt;div&gt; with &lt;ul&gt; if that's what you need). You might also need to override some of the individual element templates (depending on exactly what you want to do).

Some examples of those:


theme_textfield()
theme_select()
theme_checkbox()