Yes, a Portuguese national would need an eTA to return to Canada (and won't be allowed to board without one) but PRs are not eligible to apply for an eTA. They must have a (valid) PR card. One option if you live near the border is to simply drove across and fly to Mexico from the US.