When it comes to stateful schemes, would you really need to use a Merkle tree?
Couldn't you sign the hash of the message concatenated to the hash of the new public key?
New public key: hash(hash(message) || hash(WOTS+/lamport public key))
Then for every new signature you include the previous signature(s) (without the messages).
Is the only downside of this the growing signature size or is there a security fault?