Look at where the white dots on the semi-circle above the Venonat are. The 600 CP Venonat definitely has a lot more of the semi-circle filled in than the 200 CP Venonat. This is because that semi-circle represents what level your Pokémon are. A higher level Pokémon will have higher CP than a much lower level Pokémon with higher IVs.
CP stands for Combat Power. CP is a number calculated based on a Pokémon's IVs, level, and species. That is to say, a Pidgey will never match the CP potential of a Dragonite, regardless of level or IVs, simply due to the difference in species.
Based on how your question is worded, I believe you are using CP to define both CP and level. The level is shown on the arc above the Pokémon.
In the main series, a high level Pokémon with terrible IVs could easily overcome a much lower level Pokémon, regardless of typing or abilities, just due to being higher level. The same logic applies in Pokémon Go. If your two Venonat were at the same level, however, the Venonat that was originally 200 CP would have a higher CP than the current 600 CP Venonat.
In your case, since Venonat are relatively common, you would be better off waiting for a higher CP Venonat with better IVs than evolving a high CP Venonat with bad IVs or a low CP Venonat with high IVs.
Also, HP is not necessarily higher with higher CP. I have a Chansey with 433 CP but 336 HP. HP is one of the three stats considered IVs. The other two are Attack and Defense.