I'm currently using opengl es 1.1 for simple 2D drawing and I was wondering if it would actually be inefficient to use the opengl transform functions (since using matrix operations to move a square seems like unnecessary work), and if directly modifying the vertex array would be a better idea.
This is a micro-optimization. How would you modify the vertex array? Would you upload it to the card again from main memory? If so, that will be much slower than 4 vertices doing a matrix multiply in parallel, which is likely to be what will happen using the transform functions.
In general, you should profile your code to see where the slowdowns are rather than guessing and trying to optimize before you know. What you've described so far doesn't sound very taxing on the hardware. Also, when you do find an area that needs to be optimized, you're often better off choosing a better algorithm than optimizing the implementation you currently have. (Unless of course you know that you're using the optimal algorithm.)