^ I see. Could you describe the discrepancy below?
(The explanation assumes you know something about EC cryptography)
Person 1 makes a private key Priv1, and calculates the public key Pub1. Person 2 gets Pub1, creates a new private key Priv2, and adds (EC source point) * Priv2 to it, creating Pub2. Now, if Pub2 hashes to a nice vanity address Vnice, then Person 2 sends Priv2 to Person 1. Person 1 then adds Priv1 to Priv2, getting Privnice. [emphasis added]
To do this [verify that a VAGT is spendable], the rewarding transaction must be spendable by providing a number which, when used to multiply the generator, yields a point which when added to a specified public key point yields a new public key point which hashes to a value that gives the required vanity address.
As far as I can understand from BTCurious' explanation, verification that Priv2 is useful for Person 1 to generate his desired vanity address can be done, if both Priv2 and Pub2 is included in the spending transaction, by verifying that Pub2 is indeed the accompanying public key to Priv2, hashing Pub2 to see if the desired vanity pattern is present in the resulting address.
Your verification sounds a lot harder (and indeed difficult to implement in Bitcoin script). Is BTCurious' explanation just an over-simplification?
Thirdly, you'd have to that appropriate precautions to stop relayers from stripping your solution out of your transaction and claiming it for themselves.
Good point! I hadn't thought of this. I will have to give that some thought.