Hey Nicola, ~2700 is a huge no.
I would suggest you to talk to you programmer/developer to re-write the dynamic URLs into static, which I am sure they can easily do.
second thing, make sure to delete all the duplicate pages or use rel=unfollow. using 301 for all the duplicate pages is not a bad option but not a permanent solutions. It is better to re-write all the dynamics urls into static one, delete all the dups pages and then 301 redirect all the deleted pages to the originals.
for multilingual you can use the following code:
The tag enables you to say, “This is for Spain. this is for Germany
The rel="alternate" hreflang="es" annotations help Google serve the Spanish language or regional URL to searchers

May be I missed something, could you be please bit more specific?