CSS is a better way to go. Use a different class for the first two widgets than those that follow, so you can position them each where you want them.
Float, width, and possibly min / max-width should be all you need to get this working. If every widget is floating left, and the first two widgets are set to width 50%, the other widgets will move below, so long as the container div has a set width.