"The report engine seems to become occationally confused when I try to keep nested groups together. How do I work around this?"
Separate your nested groups into subreports.
-Main Report
--Group 1
--Subreport 1
---Group 2
---Subreport 2
----Group 3 etc...
This will require you to rethink your data as you will now need to use a master detail structure to obtain the correct report. See the example below on how this can be done. Included is also how calculations should be made for a grand total in a report such as this one.
Download: NestedGroupsKeepTogether.zip