I've prepared some data to be used for vignettes and example code (as well as other teaching demonstrations outside of these two packages). Since it very well may be the case that both packages will be loaded within the same script, I don't want to create a clash in the datasets.
Maybe consider creating the data package, include it as a remote dependency for each of the two main packages, and within each package you can decide whether to reexport any data sets from the data package that you want loaded with either package.
Does the data-only package need to be on CRAN for the others to import it in the DESCRIPTION file or can it just be on GitHub
Your package can have non-CRAN dependencies, such as packages hosted on GitHub. You can use the Remotes: section of the DESCRIPTION file to declare these dependencies. See here for more about this. Note that you cannot submit a package to CRAN if the dependencies aren't also on CRAN.