Is there a way to split a mp4 into 2 mp4, one is metadata.mp4 and another is mediadata.mp4
If I understand you correctly, you want the MOOV atom to be stored at the end of the MP4 (after the media payload). If so, this is the typical scheme used by ffmpeg unless flagged otherwise. So, copy your current MP4 into a new container via ffmpeg:

ffmpeg -i input.mp4 -c copy output.mp4