Thanks, kikemec...
I found the problem and I'm sharing it with the forum. The truck wasn't throwing any fault codes, but I used a scanner when the problem occurred and checked the engine data. I noticed that the oxygen sensor readings were very slightly different, which is unusual. It's a Signoom that has an air leak, which I couldn't see or hear. I tried spraying carburetor cleaner on the engine, and there was a slight improvement when I checked the intake. So I decided to replace the intake manifold gasket, and that solved the problem. Thanks, kikemec, for your advice.