While we are at it, why do we still have 24-hour days, or worse 12-hour half-days where the 0 hour is actually 12 and proceeds to 1. Why are there 360 degrees in one rotation? Arc seconds, arc-minutes... Why is a dozen 12 units?
I'm a big fan of metric, but I can still see a lot of sense on imperial units, even though I don't use them a lot except for the conventions that have survived like time measurement. There are some really weird units, but imperial's major strength is that its most common units tend to be ones that are handy for tasks that people deal with from day to day. 12's a great number because it divides by so many different whole numbers (1, 2, 3, 4, 6, 12). If you have 12 of something, it'll be very versatile for being evenly split up in small groups of many sizes. This is why so many things come in 12s or similar multiples.
I'm not an expert on any of this stuff, but I'd guess that the whole '12' thing is probably also why days are historically divided into 24 hours. It makes it really easy to divide a day into discrete blocks when doing basic mathematics, which is the kind of maths most people do. Divisions of 60 are just another convenient multiple.
As for 12 hour clock-faces, it's probably just much easier to read a clock face that's divided into 12 than into 24 because the gaps between the numbers on a 12 hour clock are bigger. Even if the hands go around twice in a day, you'd nearly always be able to figure out the time based on what you already know about the day so far. There are still some annoyingly ambiguous terms that are common, like 'midnight' being used to describe both the beginning and end of a day. (If someone says 'midnight Saturday', I don't know for sure what they actually mean.)
Circles are probably divided into 360 degrees because it's a very divisible number that's very close to the number of days in a year. Every night the sky and everything in it will have moved about 1/360th of a circle from where it was at the same time the previous night, before returning to where it started. If you don't have a lot of accurate measuring and construction equipment, it's still easy to divide a circle into 360 parts (a few straight lines are easily derivable locations). If you make such a circle and line it up with things in the sky, you could figure out the day of the year relatively easily to quite an accurate amount.
There is such a thing as Metric Time, but it never really took off with the rest of the metric system.
Personally I still think it's important to have systems that work in people's heads for everyday tasks, just because people aren't computers. Metric's a nice compromise for me. I've wondered for a while what it might be like if the principles of the metric system were applied to base 12 instead of base 10. Maybe you're right, and 16 would be a better option just because we have so many computers around, but as long as most people aren't directly dealing with computer implementation, they're most likely to fall back to a number that's most directly obviously useful to them. 12 is a smaller number than 16 and it divides by more whole numbers, so it wins on two counts.