Thanks for getting in touch. I've done some testing and this seems to be a limitation of NuGet.exe, which OctoPack uses to actually do the packaging. It ignores any files that do not have a filename (.gitkeep only has an extension, no actual filename). I have also verified this using NuGet.exe outside of OctoPack and it behaves the same way.
Interestingly it doesn't seem to be an inherent issue with NuPkg, because I tested using Octo.exe to create a package with a .gitkeep file and it worked correctly.
So the best option I can think of may be along the lines of what we recommend for .NET Core applications, where you get the build to publish to a folder and then use Octo.exe from there to do the pack.
Sorry I don't have better news but hope that helps.