I recall that the cargo-maven2-plugin has an uberwar mojo. I've not used it but I understand it is intended to merge wars, though you need to be careful to avoid conflicts.
A quick scan of the source indicates you define a merge descriptor to determine how to merge the wars. Unfortunately the documentation site has gone missing so I can't give you any more details.
You can check out the Codehaus Jira site for an understanding of its current status.
To use the plugin you'd specify the configuration something like this:
<build>
<plugins>
<plugin>
<groupId>org.codehaus.cargo</groupId>
<artifactId>cargo-maven2-plugin</artifactId>
<version>1.0</version>
<extensions>true</extensions>
<configuration>
<descriptor>merge.xml</descriptor>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>project1.groupId</groupId>
<artifactId>project1</artifactId>
<type>war</type>
<version>1.0.0</version>
</dependency>
<dependency>
<groupId>project2.groupId</groupId>
<artifactId>project2</artifactId>
<type>war</type>
<version>1.2.0</version>
</dependency>
</dependencies>
(still looking for a merge.xml example)