I don't know of ANYONE who offers historical L2 data.
However, on a positive note, there are certainly several pieces of charting software that can take your current L2 data stream and archive it as you go. I have such a system set up now with NeoTicker.
Once the data streams are archived, or even AS they come in, you can plot them in charts and use them in indicators, backtesting etc. The resource requirement IS hefty however, only a top-end machine and feed can handle all of the data streams.
W