I think, the built-in function (is this the general method?) of Libreoffice should be able to do this?
If not - try csv2odf. This is a very handy tool, especially for many files to convert. It should fit your needs.
I am not sure about the formatting you mentioned. Give csv2odf a try. If it does not what you want it to do, try to specify, what csv2odf does
-you want
-you don't want
Best with proper examples.
Hope this helps. Good luck!