Himanshu:
1. If you wanted to use recovered account method, you could do manipulation of the strings in the .QIF file, if you are able and motivated. The method had in mind that the imported QIFs were prepared by Microsoft Money.
2. Not sure which matching you mean. If you mean matching the two legs of a transfer, or to match investment transactions to the corresponding cash transactions, then you need to import the .QIF files all at once.
=============================
If you want to do the QIF export/import, export each of your accounts
choosing meaningful name. I would suggest this: start the name of
the QIF file for the investment accounts with an number,
and start the name of QIF files for the cash accounts associated
with the investments with a letter. Thus you might have
1BrownInvestment.qif and BrownInvestmentCash.qif. This would cause
the investment account to be processed prior to the associated cash
account. When the BrownInvestment got created, you would specify
that you want to track the cash transactions. Then specify that
the cash transactions account for BrownInvestment was where the
BrownInvestmentCash.qif transactions get sent.
Then File->Import ALL AT ONCE using Ctrl+<click> to select files.
Specify "New or Recovered" account when asked.
Of course you will use a different filename for the new file, and
you will have both versions to choose from when done. I would also
set up the backups to make sure they are using different names.
==================================
If, on the other hand, you are looking to bring in transactions, some of which already exist in the register, you would want to delete the duplicates in the QIF before import as recovered accounts. The transactions are normally in the file in chronological order, that could help you delete a block of transactions.