I don't see why a hover state should always dictate a link. Especially considering this case with multiple clickable areas within the link div. (Such as Tweet, date, delete etc). The hover is subtle and merely used to guide the users eye along the row to the 'vote' link. Maybe the main link needs an underline to remove any possible chance of confusion here.
Sure, I could position the clickable links over a linked area, but it'd be a usability nightmare with a constant pointer in link state.
I'll give it to you on your first point though, the contrast on the text is slightly low.
Thanks for the 2c.