Overlaying transparent video onto base video with custom positioning
The overlay filter is set to end with the shortest input, which here is the intro. So, the video output stops generating after that, so a typical video player holds the visual on the last frame.

Also, if your intro already has transparency, you can skip the format and ccm filters. In the command you took them from, the inputs did not have transparency in the source. 

(Unless you are resizing the videos, you can skip the scale as well.)

Use

ffmpeg \
    -i main-video.mp4 -i intro.avi \
    -filter_complex " \
        [0:v]setpts=PTS-STARTPTS,scale=2550x1080[top]; \
        [1:v]setpts=PTS-STARTPTS,scale=1920x1080[bottom]; \
        [top][bottom]overlay=x=(W-w)/2:eof_action=pass" \
    -acodec aac -vcodec libx264 out.mp4