Is it possible to make a bunch of smaller chunks of a level then piece them together at run time?

Yes, many ways to do it. You can level stream, or you can make building block actors that your levelscript chooses from and assembles on level load.