Arrays are also available, including specialized versions that hold value types.
https://www.cs.cmu.edu/Groups/AI/html/cltl/clm/node15.html
You can also stack allocate if required, via dynamic-extent, http://clhs.lisp.se/Body/d_dynami.htm
Also not all Lisps have a tracing GC, some variants had a RC with tracing GC for collecting cycles.
RAII like patterns can be achieved via the with-.... functions, or macros.
I don't know the actual performance of commercial Lisps like Allegro Common Lisp and LispWorks, but I imagine it is quite good, given that they stay in business.
On the other had, given the amount of money spent in C and C++ optimizers vs the lack of industry wide adoption of Lisp, probably still not as good as current leading C++ compilers.