2. is possible. I'd prefer, "When I arrived, I noticed they'd been drinking champagne." The fact is that they had been drinking champagne before your arrival, not when you arrived. "Before I arrived, they had been drinking ..." is also good.
3. The same argument goes for this sentence. "They had drunk all the champagne before I arrived." or "By the time I arrived, they had drunk ..."