DaDaDa: the reason is that banks fund themselves (and the mortages they provide)very much in part through the wholesale market, i.e. from other financial institutions.
The cost of funding themselves using the wholesale markets is governed by the cost of borrowing from other banks - LIBOR, or the London Interbank Offer Rate. Traditionally this has tracked the base rate very closely so when the base rate has fallen, LIBOR has fallen by an equivalent amount. Unfortunately, one of the key reasons for the contraction in credit has been the growing disconnect between LIBOR and the base rate as banks have become increasingly concerned about lending money to each other. Over the last 3-6 months reducing the base rate in itself hasn't actually reduced LIBOR much.
Very simply, traditionally if Bank A needed wholesale funds it went to the wholesale market and the market said "Sure mate, no problem, you're a well known institution, I reckon I can trust you to repay that and so I'll just charge you a nominal fee". Unfortunately over the last 3-6 months when Bank A has gone back to the wholesale market its got a response along the lines of "Hmmmm, not quite sure how much of that sub-prime crap you've got and just how stupid the other investments you made are. Tell you what, I'll lend you a bit but only at an absurdly inflated rate to reflect that."
So even though the base rate falls, with liquidity remaining low and credit risk remaining high, LIBOR doesn't follow suit and so the banks cost of borrowing has remained high. Hence the fact that they arguably can't pass on the full whack of the rate cut. Even if LIBOR falls slightly, they're also going to be more inclined to keep their lending rates where they are to try and make a greater margin and recoup some of the vast sums of money they've lost.
To the extent that LIBOR doesn't come down as a result of the base rate cut, you can't actually force banks to pass it on. Well, technically you can, but then you risk forcing banks to provide capital at a lower cost than they're borrowing it at which means (fairly obviously) they go bust. You could, I guess, try to 'fix' LIBOR but that would require pretty serious market intervention and probably a collapse in the wholesale markets.