Dear Dror,
Sorry for the delay, I was away from the office for a while. The -q option is certainly something you could implement to recover information stored in a reads file that you do not store in a compressed alignment file. I would expect this to be quite challenging because reads are typically not in the order found in the alignment file and you will therefore need random access to the read data. Given the scale of the read files, this will not be trivial and at first glance, I would expect performance to be relatively low. It is not clear if performance will be sufficient for practical use, although if you use this only for archival it might be OK. Feel free to try this if you like, as we are not pursuing this line of work at this time.
One piece of information we don't store at all in alignment files is the unmapped reads. You can retrieve these reads from the reads file by scanning the reads file with the index of the unmapped reads. You just need one pass across the reads file to retrieve all unmapped reads (this is a special case of what you describe, here we don't need to merge the read data with the alignment data). We use this strategy to implement a pathogen detection pipeline in GobyWeb and performance is quite good (see GobyWeb pre-print).
Hope this helps, Best, Fabien