we've a similar problem in our team.
The solution we're using is a custom build process.
Each EAR project has dependency on its EJB and its WAR, and possibly on other WAR projects.
Each EJB can have dependancies on other EJB project.
The build process (ant script) make a build, reccursively checking each dependancies.
It works fine. We just have to be sure we don't have a entity name conflict in different projects.