As it's been said, Lance clearly knows Roy isn't the Arrow, but there's nothing he can do as the evidence against Roy is far more incriminating than the evidence against Oliver. Roy was dressed as the Arrow and confessed to being the Arrow in front of Lance and multiple police officers. All Lance has on Oliver is the word from a guy who calls himself the Demon's Head and leads a League of Assassin's. That's not going to fly in court lol. Oliver also didn't confess to being the Arrow. All he did was turn himself in because there was a manhunt out for him. So yea, there's really nothing Lance can do. His hands are tied.