Our client would still ignore invalid blocks even if they are bitcoin-stamped.
So now every client needs to validate every single block just to be able to ensure that transaction that occurred sometime after that block does not rely on something that is invalidated?
Now you're back into the 'validating transactions is so impractical as to be impossible' scenario.
Validation is orders of magnitude easier than discovering proof of work. Only our client would do it, and it is something every bitcoin client does. I don't see a problem.
I am not sure about that. Even validating simple bitcoin transactions requires knowing the entire history of the transaction chain that leads up to the transaction in question. Except that because bitcoin only allows validated transactions into the block chain, and because each transaction completely spends the output of the prior transaction, you really only need to keep track of the most recent transaction in every chain of transactions.
In your proposal it seems that, since the bitcoin miners aren't doing any work at all to validate your data set before including the block, every client is going to have to evaluate every single data set completely in order to have an accurate picture of what transactions going forward from that point are valid and which ones aren't. It just seems like an incredible multiplication of the amount of work for everyone.
With bitcoin, a client can keep just the block chain headers and from that, it can query to someone with more resources than itself to validate transactions in a light weight manner, and can verify their results based on the small block chain headers that it stores (~4 MB per year, easily sustainable for every bitcoin peer). How will such a thing be done in your external block chain, which will have both valid and invalid blocks and for which the client will not know, just from bitcoin block headers, which ones were valid and which ones weren't?