well that should work i suppose, but i highly recommend you to skip the step of compressing the avi and then uncompressing it.
the whole reason why i wrap the raw h.264 stream into an mkv to make it usable with virtualdub is to avoid quality losses by converting the stream.
i have my own custom tools for funky videos (im looking at you crisis core!) but generally mencoder (M) whould work for most games.
what i do is more or less;
m.exe VIDEO.PMF -dumpvideo -dumpfile VIDEO.h264
m.exe -dumpaudio -dumpfile VIDEO.at3 VIDEO.PMF
mer.exe -o VIDEO.mkv --default-duration 0:30000/1001fps -d 0 -A -S VIDEO.h264 --track-order 0:0
this will take VIDEO.PMF and dumps it into a VIDEO.h264, VIDEO.at3 and wraps a copy of VIDEO.h264 into a VIDEO.mkv
the resulting mkv contains the h264 stream as it is on the pmf, no processing whatsoever, it simply changes the container from pmf to mkv.
if you need the audio, grab a copy of sony's at3 tool (should be easily googleable, i dug it out of fate/extra CCC data back in the day) and convert the at3 to wav.
now you can simply use virtualdub to embed your subtitles (there's plugins that support .srt/.ass etc common formats) and save the video as an uncompressed avi.
at this stage it will have your subtitles and the stream itself is still unchanged as far as the quality goes, the only minor quality loss you suffer this way is the process of making a new MPS out of the uncompressed avi (the loss is negligible if you use proper encode settings.)
edit: it's worth a note that whatever encoder you use, make sure to set the color space correctly, since psp is not using a standard 0-255 sRGB colorspace, but instead its using a 16-232 one.
what this means is that if you encode anything using default settings of practically any codec/encoder/whatever ever, you will end up messing up the pmf, and your new shiny subtitled PMF will be much darker than it's original counterpart.