Você pode usar o Gtk.TreeSelection.set_select_function
funcionalidade para isso. Basicamente você dá uma função, cada vez que uma linha é selecionada esta função é chamada. Quando ele retorna False, a linha não pode ser selecionada.
Veja um exemplo:
treeview = builder.get_object("treeview3")
selection = treeview.get_selection()
selection.set_select_function(_select_func, None)
def _select_func(selection, model, path, selected, data):
return False # Can't select this row