the transaction info you see is in wallet.dat, not sure what's in there but if there are block ids, then we could indeed try your solution :-)
yay

Alternatively, I thought it might be possible to add an API call to list all block ids that contain transactions to/from a certain wallet address. Then a wallet could "ask around" for which blocks it should sync - might also be possible to have this as a feature for the block explorer. To reduce p2p traffic?!