It looks like git config --unset may leave an orphaned section, but a subsequent set adds a new section:
$ git config --file=myconfig section.foo true
$ git config --file=myconfig --unset section.foo
$ cat myconfig
[section]
$ git config --file=myconfig section.foo true
$ cat myconfig
[section]
[section]
foo = true
$ git --version
git version 2.5.0.rc2.392.g76e840b