The only reason to prevent something dying is where its maintenance is, at least temporarily, beyond your control. So IMO best practice is, yes, patch around it with one of the techniques already mentioned, but I'd avoid too routine a habit of patch and forget - be sure to have bug-reporting/follow-up built in to your dev cycle.
In regard to warnings, they should be corrected. If a CPAN module produces a warning and it is a result of giving it duff parameters, I'd be inclined to force it to die and fix the root cause in my code. 'use strictures 2;' is a shorthand for the following:-
use strict;
use warnings FATAL => 'all';
use warnings NONFATAL => qw(
exec
recursion
internal
malloc
newline
experimental
deprecated
portable
);
which is not necessarily the best match for either your code or a given CPAN module. So it is worth maintaining a site policy on these settings.
Finally, if you are convinced a warning is wrong, best post it here for discussion.