Solana uses a leader schedule to assign who will create blocks during small time windows that we call slots. Each slot has exactly one leader, and at most one block can be produced during one slot.
During a slot in which a node is a leader, the node processes transactions in parallel and sends them out to the rest of the network as it determines that these transactions should be included in the block. The other nodes that are serving as validators collect, replay, and then vote on this block.
The only way to see if a specific tx is in a block is to have the entire block, deserialize it and check for the desired tx signature. In order to do so for arbitrary tx's & blocks, the node must be able to ingest all of these blocks as they come in. In order to ensure that you are getting valid blocks, your node needs to replay the transactions and see if the state matches the state that clusters reaches consensus on.
I'm not sure exactly how your hypothetical "light client" might function, but from the above, it should be clear that there aren't any shortcuts for reliably determining if a specific tx is in some block.