Bonding plays role, but so does the nuclear (atomic) mass and the adding of d-orbitals rather than p-orbitals. Some of transition metals are denser than non-metals in the same period, with group 9 being the densest in periods 4, 5 and 6. The alkali and alkaline earth elements, groups 1 and 2, are lighter than the solid non-metals in their respective periods.
Yes, metal-metal bonds in metal crystals (which is what you mean by 'a metal' in everday speech) are relatively short. This is related to another factor, which is that since metals have d-orbitals as their valence shell, they're smaller - d orbitals are small. (by whatever measure you use to define the radius of an atom, there's no agreed-upon one) By comparison, s-orbitals are quite big, which is why lithium is very light - not only does it have a low atomic number, but it's surrounding electron cloud is quite big, relatively speaking.
Another factor is that non-metals can't form the big single-element crystals that metals can. In the few cases they do (S8 for instance) they're not packed as dense. When they form crystals its usually as an ionic solid, which means the have a counter-ion, and again, they can't be packed as dense.
Yet another factor is the contraction of orbitals due to special relativity. As elements get heavier, the increased positive charge of the nucleus causes the innermost (core) electrons to move faster (classical analogue: a planet orbiting more closely to the sun has to move faster to stay in orbit). They move so much faster that the electrons start to pick up relativistic mass - which causes their orbitals to contract (and the others follow suit). So even though heavy metals have lots and lots more electrons, they're not that much bigger. (E.g. Uranium has 3x the number of electrons Chromium does, but only about 10-25% bigger radius, depending on how you measure it)
So metal atoms are all roughly the same size - so the density of metals compared to other metals is mostly dependent on the atomic weight - and you find the heaviest metals (Tungsten, Osmium & co) right near the bottom of the periodic table. But the density of metals compared with non-metals is mostly due to the other factors.