The historical average return for the large stocks is 13%. But you have to hold them awhile so the ups and downs smooth out over time. Where did you get the 7% figure?
We are studying historical returns in my finance class right now. The risk free proxy, treasury bills, is just over 4%. Govt. bonds some in slightly higher (have higher risk premium), then corporate bonds, then large stocks, then small company stocks (where historical return is close to 17%). Of course these historical averages are over the last 50 years.
If you want a higher return, you have to take risk because the diff in the risk free rate (treasury bills) and actual return is risk premium for holding that investment. And you gotta be willing to hold them long term. Since you are comparing this to a mortgage, which is a long term investment, I assume you have a long time horizon of say 15 years or so. In that case, you might benefit by putting some money into a spider fund or the S&P500 index. Just look for a fund with low fees.
edit: since we are on the discussion of finances, I would also strongly suggest having several months worth of liquid assets on hand in case of emergencies. You can put it in an Ingdirect account and get 2% or buy short term govt securities and get closer to 4%, which just about keeps up with inflation.
Really what you need to do is sit down with pen and paper (or MS Excel) and figure out what your 5 year, 10 year, and retirement-year goals are financially. Only when you know that can you make reasonable decisions regarding where to put your money.
edit2:
Good article on fatwallet forums about ARMs vs FRMs.