I’ve looked at that exact same question before I posted my question, and that’s where I got the idea that I need to put the header and source files in the public and private folders, before, but as indicated in my question, it didn’t work for me
A more typical setup would have the Public and Private folders as top-level folders for your game, rather than folders inside a sub-folder, eg)
FPSGame
Public
Character
SomeStuff.h
Private
Character
SomeStuff.cpp
SomeGameMode.h
You can either change your folder layout to be that way, or you could add your Character/Public folder to the PublicIncludePaths in your games .Build.cs file.