On the unibodies, the keyboard is officially unchangeable. Apple would have you replace the whole topcase, that has both the keyboard and trackpad bonded in place. Not the cheapest proposition, so the external keyboard option, be it cabled via USB or wireless via Bluetooth, becomes an attractive alternative. Heck, add a mouse and a display in the mix and you can run it with lid closed in Clamshell Mode.
As for getting the OS to recoognize and use the different language keyboard, go to System Preferences / Language & Text / Input Sources to enable the desired keyboard mappings. I see at least two options attractive to you: Brazil and Portugal. Note that you can enable different mappings (aka Input Sources) and switch between them on the fly. While there, you can enable the "Keyboard & Character Viewer" option, pops up a menulet on the menubar that in turn lets you open the Keyboard Viewer; a mini window showing how each key of the current keyboard is mapped.