That is a known issue with passing strings through the pipeline and OBN.
Try like this
Get-VM -Name (Get-Content C:\tmp\VMList.txt) | Get-VMResourceConfiguration | Set-VMResourceConfiguration -MemReservationMB 1024 -MemLimitMB 2048
The difference is that you now pass an array of names on the Name parameter of the Get-VM