Using ReplacePart
and Cases
as follows:
a = {{{1, 0}, {1, 7}, {2, 0}, {3, 2}, {4, 70}},
{{1, 0}, {1, 0}, {2, 1}, {3, 20}, {4, 7}},
{{1, 0}, {1, 1}, {1, 0}, {3, 1}, {4, 0}}};
pattpatt1 = {x1_, x2_} /; x1 != 0 && x2 == 0;
pos[l_List] := Position[l, patt]patt1]
parts[l_List] /.:= {x1_Cases[l, x2_} /; x2 == 1patt1 -> n{x1, Na}, 2]
delrulespatt2 = DeleteCases[#, Rule[s1_Rule[lhs_, s2_]rhs_] /; !lhs[[2]] ListQ[s1]]!= &;1;
ReplacePart[#,rep[l_List] delrules@Thread[pos[#]:= Cases[Thread[pos[#] -> parts[#]]]parts[#]] &@l, patt2]
ReplacePart[#, rep[#]] &@a
(*{{{1, 0}, {1, 7}, {2, Na}, {3, 2}, {4, 7Na}},
{{1, 0}, {1, Na}, {2, 1}, {3, 2Na}, {4, 7}},
{{1, 0}, {1, 1}, {1, Na}, {3, 1}, {4, Na}}}*)