Just looking at the figures for January 2008, there were 17 Gatwick to Heathrow and 8 in the opposite direction during the month, so nearly one a day. A variety of reasons. Repositioning following inbound diversions seems to be a principal cause (hence the imbalance in numbers). There's a BA 737 to/from a fortnight-long check at Heathrow, and several Virgin 340s and 747s doing the opposite. On 17 Jan evening there were 3 Gatwick to Heathrows, two BA Airbus and a Singapore 747, in the space of 3 hours, after diversions.
Also happens from Heathrow to/from London City, in this case often positioning business jets.