As suggested in another related post from you, make a square into a component, then use the Move/Copy tool to array a row horizontally where you want the whole bottom (or top) row. Copy the first one to the right by the size of the square, plus 12’, then type 20x (or however many copies you want) to array 20 copies to the right.
Then select the whole bottom row, and Move/Copy 12’ plus the size of the square up (or down if you started from the top). And to get multiple rows, type (say) 9x for 9 more copies, making 10 rows in total.
If the squares are all loose geometry, you have to be careful not get them stuck together when moving.
But it would be quicker to start over with one component of each colour, and use the Move/Copy function to array new sets.
Or work from the top down.
It would be easier to help if you can upload your SU model (.skp file) not just an image.
As to making a label that stays centred, you could use the FlatText extension from the Extension Warehouse. That gives you a limited but adequate selection of simple fonts, and you can centre-justify the text, and position it centrally to stay flat in the square.
There’s a slightly limited free version, and an inexpensive paid for version (around USD $15 IIRC). You get a free trial.
With native tools you can use 3D text, but to edit it, you’d be advised to use the (free) 3D Text Editor extension by ThomThom.