All 3 lines are being changed, because all three lines are matching. So you need to change your pattern so that only the one you want will match. The thing that is different about the first is that it has no trailing digit. So the simplest way is probably to just add a
\s to the end of your matching string. So you would have this:
perl -i -pe 's/\.mbh_succ_roam_i_vlr_e_plmn\s/\.new_mbh_succ_roam_i_vl
+r_e_plmn/g' <input_file>
Personally, I'd do it slightly differently. Perhaps like this:
perl -i -pe 's/\.mbh([_a-z]+)\s/\.new$1/g' < input_file
cheers,
Darren :)