Sorry for resurrecting this post, but I recently had this same problem and found this thread through a search. I wanted to add a little information that might help anyone else having the same problem.
1. Maybe a no brainier, but LH/SH (Load/Store Halfword) commands have to be aligned also, as well as the LW/SW.
2. The PSx v1.13 debugger does seem to check for non-aligned memory read/writes IF there is a conditional break set up. It doesn't crash like a real Playstation would, but a misaligned LW seems to "blank" the register (loads "00000000") that is being loaded into. A misaligned SW is ignored (nothing is written to memory).
3. The PSP has a MIPS processor just like the original PS1 so it likely has a hardware restriction on misaligned Loads or Stores. So like Gemini said, if it causes the PSP emulator to lockup, misalignment is a likely culprit.
4. I haven't used them, but the commands LWL/LWR and SWL/SWR (load/store word left/right) seem to be functionally identical to LW/SW and supposedly allow misaligned reads/writes. They read/write 4 bytes to the left or right of the given location. It might save some headaches use them instead.
In the game I'm working on, it originally used LH to read a two-byte Japanese letter, then advanced a second register (that stored the memory read locations) by 2: ready to read the next letter. When I gave it a half-width English font, I set it to read 1 byte, advance 1 byte. What I didn't realize was the game later reloaded the letter (using LH) to check for "dots/circles" accent marks. Since I had changed the memory register to advance by 1, the LH for the "dots/circles" was creating an intermittent misaligned read. Anyways, thanks Gemini and Kil for the helpful information