This "mystery" confuses many people, because it's complicated AND involves a little bug in Photoshop.
The PSD format has an option for "maximizing compatibility." It's found in Photoshop under Edit/Preferences/File Handling. It may be set to "Never", "Always", or "Ask". If a PSD file is saved with "compatibility", an extra jpeg copy of the image is placed at the top of the file. That is so other non-Adobe programs, like FastStone and iFranview can read the file, display the image and a thumbnail.
If the PSD file has layers, no other non-Adobe program can make sense of those layers and create a composite (flattened) version. So "compatibility" sticks a flattened jpeg version in there so they can work. However, that extra jpeg copy makes the PSD file larger, so many people turn compatibility off.
Now the Photoshop "bug" comes in. If a PSD file is truly flat (no layers), Photoshop always sticks the jpeg copy in the file even if you told it not to by setting compatibility to "never". To see the proof of this, save two copies of a image in PSD format. One "flat" version, and one with a simple blank layer added, both with compatibility set to never. The one with the extra blank layer should be slightly larger, but it's not. It will be smaller, because the compatible jpeg is NOT there.
So, you have a mix of PSD files. Some are flat, some have layers. FastStone can display the flat ones because they contain a jpeg copy (regardless of your compatibility setting). But FastStone can't display the layered PSD files unless they were saved with compatibility.
Given your problem, I'd say your layered PSD files were saved with no compatibility. Nothing you can do about that now, exepct to re-write all those PSD images with compatibility turned on.
Even a flat PSD file would be unreadable by other programs. Adobe uses a proprietary lossless compression to store the image data inside a PSD file. No body else can decode that. Thus the reason for the exta jpeg copy.