^M is a carriage return, represented by \015 or "\r" (less reliably). See Newlines in perlport. You could drop those easily with s/\r//g, but for the sake of argument I will assume you want to keep them. They are white space characters, so you can maintain insensitivity to them by ignoring trailing white space, e.g. /Cessna\d+\s*$/.
So you could do this in a one-liner like
perl -pi -e '$i--;$i=2 if /Cessna\d+\s*$/;s/Down(?=\s*$)/Up/g if !$i' *.txt