В tableView:targetIndexPathForMoveFromRowAtIndexPath:toProposedIndexPath:
if (proposedDestinationIndexPath.section == sourceIndexPath.section)
return sourceIndexPath;
Это приведет к тому, что строка вернется к исходному указателю, если раздел, к которому она пытается перейти, не совпадает с исходным указателем пути