An update - I did just try flashing a fresh card with nothing on it and it runs at full speed, so definitely not the Pi or RAM issue. I've uploaded a video here that hopefully shows what's going on. As you can see, the first percentage is 100%+ but the second one shows that not 100% of frames are being rendered, basically it's trying its hardest, but seems like things are being throttled back.