Okay, so the plot thickens. Had some discussion about this with somebody else in Red Hat. Here are some highlights:
Section 13.2 of the 2.5 spec:
"Web containers must remove all leading and trailing whitespace, which is defined as “S(white space)” in XML 1.0 (http://www.w3.org/TR/2000/WD-xml-2e-20000814), for the element content of the text nodes of a deployment descriptor."
Combined with the definition of "S(white space)" from http://www.w3.org/TR/xml11/#sec-common-syn:
(white space) consists of one or more space (#x20) characters, carriage returns, line feeds, or tabs.
The Servlet and XML specs seem pretty clear in this case. Descriptor element values must be stripped of line feeds. The fact that the Nexus descriptor relies on line feeds and works in other containers seems to indicate that those containers are non-compliant in this way, and Nexus is now reliant upon the non-compliant behavior.
I'll do some research in those other containers in which Nexus works to see if and why they are not conforming.
As far as Nexus, I now believe this is a bug. The application cannot rely on non-compliant container behavior in terms of the deployment descriptor. If the Nexus developers agree and accept this as a bug, we could move on to discussing how to implement a patch.