Each plugin is going to generate the code it wants to generate and some of it won't be XHTML 1.1 compliant. The only reasonable way to correct that would be to audit each one and either modify the offenders or get the developer to modify or use your modifications as a patch.
Alternate you could try to write a filter to clean it up but trying to catch all the special case seems like a version of my own personal nightmare and it would also affect performance for dudious benefit.
Do you have a client/boss who wants this, or is it just something assumed to be as a "nice-to-have?" (Yes, there are some who feel strongly about it. I however am not one of those.)
That said, XHTML is loosing its "fair-haired child" status on the web; even Tim Berners-Lee said so back in 2006:
Some things are clearer with hindsight
of several years. It is necessary to
evolve HTML incrementally. The attempt
to get the world to switch to XML,
including quotes around attribute
values and slashes in empty tags and
namespaces all at once didn't work.
The large HTML-generating public did
not move, largely because the browsers
didn't complain. Some large
communities did shift and are enjoying
the fruits of well-formed systems, but
not all. It is important to maintain
HTML incrementally, as well as
continuing a transition to well-formed
world, and developing more power in
that world.
You might also want to read HTML5 is so much easier to write than XHTML 1.0. over on StackOverflow. Here's their summary:
Just syntax-wise, when you use HTML5,
you end up with cleaner, easier to
read markup that always invokes
standards mode. When you use XHTML 1.0
(served as text/html), you're
specifying a bunch of crud (in order
to validate against a crappy dtd) that
the browser will do automatically.