The only thing I can think of that might help needs to be done in the universe and has the potential to cause confusion if your users are creating their own WebI reports.
If you're not using any contexts in the universe, you'll need to create two - one with everything including the self-join and one with everything except the self-join. I would name the second context something like "For_Crystal_Subreports_Only". If you already have contexts, you'll create the new one on the appropriate links without the self-join.
All of your reports would have to use a context with the self-join and any sub-reports would use the context without the self-join. You then link the subreport to the main report on all of the applicable fields, including the one for the self join.
-Dell