I care about those things too, but don’t have experience with WP. Can’t you trace the php back to where it actually creates this output and fix it there? (Not the best solution obviously, since updating WP will just overwrite your changes, but don’t ask me how to make a module or plugin for WP that overwrites default behavior)
I used to do this as well, just to end up with code that’s as clean as possible. But, in the end it just took too much time (and editing code in WP core), and it just wasn’t worth all the effort. It’s not bad or dirty code — it’s just a little different than what I would like to see.
I just learned to live with it, or perhaps I just stopped caring about something as trivial as this.
I’ll second that. I once decided to refactor a cms (I think it was Concrete5) to output html4.01 strict instead of xhtml… I worked on it for three weeks, completely broke the system a dozen times, and eventually decided it didn’t really matter. Either use something the way it was designed, or make your own.