Assuming that no one else has hit the ask, and the asks are still there, yes, you will fill $54.55 as long as you didn't exhaust that ask.
Actually, there is no "current price at which the stock is exchanging hands"; in reality, it is "the last price traded".
The somebody who negotiated prices between buyers & sellers is the exchange through their handling of bids & asks. The real negotiation comes between bids & asks, and if they meet or cross, a trade occurs.
It's not that both bid & ask should be $54.55, it's that they were.
To answer the title, the reasons why the bid and ask (even their midpoint) move away from the last price are largely unknown, but at least for the market makers, if their sell inventory is going away (people are buying heavily and they're running out of inventory) they will start to hike up their asks a lot and their bids a little because market makers try to stay market neutral, having no opinion on whether an asset will rise or fall, so with stocks, that means having a balanced inventory of longs & shorts. They want to (sometimes have to depending on the exchange) accommodate the buying pressure, but they don't want to lose money, so they simply raise the ask and then raise the bid as people hit their asks since their average cost basis has risen.
In fact (yahoo finance is great about showing this), there's rarely 1 bid and 1 ask. Take a look at BAC's limit book: http://finance.yahoo.com/q/ecn?s=BAC+Order+Book
You can see that there are many bids and many asks. If one ask is exhausted, the next in line is now the highest. The market maker who just sold at X will certainly step over the highest bid to bid at X*0.9 to get an 11% return on investment.