$form->add('name_'.$language->language_code, 'Name in '.$language->language_name, array('value' => $text));
Doesn't it seem like a good idea to add a 5th parameter to the fieldset class in order to specify markup that will wrap your <label> and <input>?
Or is there another way to do this?
Yes, there's at least one other way. Check out core/config/form.php which contains templates for form output. You can override these by creating your own config file in app/config/form.php. These would be the default settings. I can't remember if there's a way to override them on a per form basis.