I spent a while trying to figure out what was causing my save issue, and it turned out that it was simply because the new collectible I had placed in place of the old one was causing a constant collision with the checkpoint it was resting on. I then noticed that despite a lot of countermeasures, the loading screen was not displaying, and it was needed because the textures were coming into view at a low resolution.
While I was testing some edits to try and make the loading screen work, I noticed that gold was not saving between lives, so I went to look at that, and found that it was the result of a change I had made to try and clean it up: I had removed the part in the checkpoint that saves the current amount of gold in itself, so when it came to save the variable it was empty.
I managed to fix the gold not saving issue by saving the gold whenever the player was killed instead of on checkpoints. At this point there was still no progress on displaying the loading screen, except it was taking a little longer to load on startup which I thought may have been a result of the increased time I gave to the loading screen, despite not actually showing anything, so I added an Unreal wallpaper as the background, but it still didn't show up.
Through reading and rereading the documentation, I discovered that the loading screen plugin I was using only works if you are using level streaming, so I switched to level streaming by adding my 2nd and 3rd levels to the first one. I wasn't very sure how to use level streaming, and to begin with it didn't work to get the loading screen, but did speed up transitions between levels.
In the end I decided to abandon trying to use a loading screen and level streaming, going back to a basic level system. Provided I don't want to change anything else, I am back to just needing to design levels and not any major programming.