No. Windows is not restricting your applications
If your rendering app is only single-threaded, then it can only use 100% of one CPU. So, for example,on a two-CPU machine it would show up as 50%. Windows can't make it use both CPUs because it's up to the app developer to break the task into multiple threads.
But some of the time it will have to wait while it reads input video and writes the output video... which would account for its only using 40%.
It is similar for RAM. Assuming your machine is not RAM-starved, Windows will let a process use as much RAM as it's referenced recently.
To make the compute-bound portion of video rendering go faster, you can buy a faster CPU, or buy a video card that your app can use for acceleration by doing some of the work in the GPU. Or get a different rendering app, one with better-implemented multithreading.
To make the I/O go faster, put the input, output, and temporary files on three different drives (not just drive letters. Different physical drives). Since the input files are normally the largest, and are also typically accessed in a random fashion if you're combining multiple inputs, put them on your fastest drive, an SSD if possible. The speed of the output drive won't matter much: The rate at which you can render video is a slow walk to any hard drive.