It is correct that every miner should be a node, or at least have the capabilities to validate all the transactions and preferably also be able to validate the blocks that it receives.* The miners in a pool will at no point receive sufficient data or have sufficient data to validate anything; they don't have UTXO, they don't receive the entire block from the pool. When a pool receives a new block, the pool validates the block and if it passes validation, they will send the block header together with the hashes to the miners and they will start compiling the block headers to hash it.
A pool has to be able to validate transactions. If they are unable to do so, they cannot determine the valid transactions to be passed onto the miners mining in that pool. Miners within a pool doesn't need this, they trust that the mining pool is able to discern valid blocks and valid transactions.
* As for this, I imagine if you were able to SPV mine and just trust a reliable source (some block explorers) for the hash of the tip, target, etc , you can probably just mine empty blocks and you wouldn't need to validate anything. Of course, no one does this.