He may just have intestinal parasites. Tapeworm, giardia, coccidia and others may be difficult to find on standard fecal tests. I would take your puppy to the vet ASAP and have him dewormed empirically. Please also have a fecal or stool check. Most worms and protozoa are NOT eliminated with only one or two de-wormings, and different parasites require different anti-parasite medications.
Thank you for your help. We actually figured out it was the soft food we were giving him. He's much better now.