For some reasons (aka default style), figures in odfWeave are not anchored “as character”. This makes them jump around. The solution is relatively easy: change the default style. Except, of course, that there is no visible option to change the anchoring of graphic frames in LibreOffice/OpenOffice.
Here’s how to do it: (1) in your source file, paste a picture (any picture will do). (2) right-click on the picture, and choose “anchor: as character” (3) open the “styles and formatting” box, and choose “frame styles”. (3) select the “graphics” style. (4) choose “new style from selection: update style”.
You can now run odfWeave, and the figures no longer jump around. Who knows, maybe bug 14008 in OpenOffice will be addressed one day…
Another way (slightly more complicated, I think) is described here: http://socialdatablog.com/stop-your-figures-jumping-about-in-odfweave/
Perhaps that solution with knitr+markdown+pandoc isn’t so bad after all: http://www.r-statistics.com/2013/03/write-ms-word-document-using-r-with-as-little-overhead-as-possible/ (except it doesn’t have Zotero built in)