Having the double advantage is generally superior, but raw CP can easily be better. It's the attack stat that's key, rather than the CP, then it's just a case of mathematics.
A super-effective attack does 1.4x damage and a double-super-effective attack does 1.96x. STAB, if applicable, (it is in most cases) adds a further 1.2x. A Pokemon with exceptionally high attack could then be superior using just SE attacks, or even neutral damage.
In the specific example, the Golem would be the better choice. If the Vaporeon was a little stronger, around 2800cp, then it would edge out the Golem. That's just in terms of DPS anyway. The Vaporeon would probably survive for much longer.