There are two reasons for this. Firstly, the drying up of the inter-bank market. It stops smaller/less well capitalised institutions from lending. Historically, you make no profit on Mortgaged lending, it is the cross-sales where the profit comes and as there is lending, less cross sales and higher prices.
More important than that at the moment, base rate is so low, there is only so low you can go with the savings rates before you lose them. cash deposit bonds are still around 3 - 4% in most banks and that is the money they lend out to the Mortgage borrowers so of course the cost is staying relatively high. Once things 'normalise' to 5% interest rates and fixed deposits are still between 2% & 6%, mortgage fixed rates will look better.
BTW, HSBC are offering fixes from 2.49% at the mo.