Static mesh creation

Hi,
This is a general question for the audience at large. For a while i have been using the pre-created shapes to design my objects and levels, doors, windows, wall etc and the once many have formed what i want i convert them to a blueprint, however when i begin to apply materials to each of the separate shapes i created that form the blueprint its sizes increase greatly and the FPS drops enormously for example 120 FPS to about 25 FPS!!.

I am wondering if i am going about it correctly should i be using the BSP elements and placing many of them together to create my level objects and then converting them to a static mesh, so that when i build my room in the level for example it is from the static mesh objects already rendered and colored accordingly?

One thing i did notice is that with the old way i was doing grouping meshes and turning them into a blueprint is that is was usually reflective materials, metal and glass that caused the most amount of lag and distortion in the level, i will work on fixing that. For now though i wanted to make sure im going about this the right way do i use many static mesh(s) and created a blueprint or should i create the static mesh itself and use blueprints only for animation? Automatic doors, light switches, elevators etc?

Thanks
Chris