Any field in the form (whether rendered or not) will have a value, either null or the value of the field.
Which version of Symfony are you using?
I assume you're using <2.3 as I think bind was changed to submit at 2.3. With bind every field is merged into the object meaning it will replace the data, null or otherwise. I think the only way to work around this would be to either just not include the unwanted fields in the form or the use an event listener as documented in the cookbook.
If you are using 2.3+ (or you upgrade to 2.3+) then you should be using $form->submit() which has a second argument which allows you to set the form to not overwrite object properties if they are null. eg $form->submit($request->get($form->getName()), false)
(true being the boolean to set/unset the overwrite, or $clearMissing on the actual code)