In the retrial the defence put up a good argument that the fingerprints on the top of the rifle, in the pickup position were not in blood. It appears that Kim Jones, the expert who made the determination that it was blood, only assumed it was blood and he made some incorrect observations about what polilight does in contact with it. If this is true, then it helps understand how the glasses didn't get blood on them.
It would appear that the glasses came off soon in the fight with Stephen. Possibly David trod on them during the fight, damaging them badly as well as alerting him to their location on the floor. He may have had time to kick them away to prevent further damage, knowing that he would still need them to kill Arawa. It makes sense that he would not remove the gloves until after Stephen had been subdued by strangulation or loss of blood. Then he would remove them, because now they were bloody and would put blood on everything he touched, including the rifle. Once the gloves were removed there would be no further need to touch Stephen and therefore he could keep his hands blood free. He then picks up the rifle, leaving the fingerprints that Jones identified and gives Stephen his fatal shot. After this is done he retrieves his glasses, and since his hands are blood free, there is no blood to transfer onto them. He then takes them to his room to assert whether or not they are of any use to him, but on the way hears Laniet gurgling and goes in to finish her off. Once in his room he finds that the lens is missing and they are too broken. While in his room he takes the opportunity to reload a magazine.
It is quite possible that Arawa was woken by the tumult upstairs and was making her way up the stairs by the time David appeared. He would then shunt her back down to her room where her body was found executed on the floor.