Вообще то должны перерисовываться только ячейки в определенной строке. К примеру, по вызову метода DataProvider.invalidateItemA(index) перерисовываться должны ячейки в index строке. Так и происходит для первого столбца. Второй столбец перерисовывается полностью

Я конечно могу отследить какая именно строка перерисовывается в данный момент и отсечь ненужное, но это не гут.