I don't think it's your method that's in question, probably the amount...
300 pieces before you start creating the level is a lot of objects...
In my experience, usually there's a drop in performance above 500 objects, that can start to chug as you approach 1000 objects, but it will depend on what these are doing exactly obviously.
I'd aim for 25-50 background "parts" per level...