I see no problem with SPV mining while verifying the previous block. It would also make my above suggestion pointless.
Yes.
Moreover, I don't see why the time spent verifying is very significant. The vast majority of transactions would have been verified by a full node before being included in the block, and then it is just a case of checking the hash. The verification time for a block would then be insignificant relative to its download time.
Great point. Does anyone know how Bitcoin Core currently works in this regards? Is every transaction in a block (re-) verified? Or are the transactions first hashed, and if matched to a TX in mempool not re-verified, thus saving time.