Answer is really 1/2, not 2/3. Note that you are picking a "random bag" not marbles. So one bag has remaining white marble, one doesn't. The other bag is not a possibility with 2 black marbles. So, 1/2.
No, you're wrong. You pick a random bag, but you already know the result of the pick from your random bag. You've passed the random bag stage (thus why we can eliminate bag b as a possibility) and are already at picking a white marble. There are three white marbles, each with the same probability of being picked. 2/3 white marbles are with another white marble, therefore 2/3 of the time you'll draw a second white marble.
As usual these probabilities are easier to look at once you make the example absurd.
Now there are 1000 bags. 998 of them have two black marbles, 1 bag has two white marbles, 1 bag has one of each.
Even though the problem states we picked a random bag, if it also tells us we got a white marble out of it we know that it was one of two bags. For the sake of the problem the other 998 bags might as well never existed. We know that out of the 2000 marbles, we are only looking at 3. 2 of those are with each other, the last one is with a black marble. p=2/3