Чувак, $(<selector>) получает элемент по селектору <selector> вот прям там, где вызван, тогда, когда вызван. И всё. Он не следит магически ни за какими изменениями, просто получил(или не получил) элемент и всё. Иначе это бы была безумно сложная (и никому не нужня) хрень.
Просто решение в лоб: прям в твоей hover функции проверяй на наличие селектора прежде чем что то делать, типа:
if ($(this).is('.blochover')) return false;