In my conception (which may be flawed; I came to this conclusion after university physics classes that I didn't always understand as well as I should have, and these were 20+ years ago), the speed of light is governed by "the rate at which things can happen".
Electromagnetic waves propogate because a changing electric field produces a changing magnetic field which produces a changing electric field, etc. For reasons that I can't remember these changing fields occur in a slightly offset position each time, so that the fields move through space as they create each other.
If causes and effects could occur at an infinite rate, the waves would move infinitely fast; but since there always has to be a time gap between a cause and an effect, there is a fixed upper bounds for the rate at which these fields can produce each other.
There is also a fixed lower bounds on the minimum offset that can occur between the electric and magnetic fields.
So what you have is essentially effects occurring as quickly as possible over distances as small as possible. The ratio of the smallest possible time between a cause and an effect, and the smallest possible distance between an electric field and the magnetic field it produces and vice versa is ... the speed of light.
So why can't light go faster than c? Two reasons really: a) things "can't happen" faster than the cause-effect relationship of a magnetic field producing an electric field, and vice-versa; and b) distances between an electric field and the magnetic field it produces, and vice-versa, can't be smaller.
I vaguely remember that this is related to one of the cool aspects of Calculus - the ability to take the ratio of an infinitesimally small number to another infinitesimally small number, each expressed as a limit approaching zero, and get a calculatable, real number result.
In this case, if you take the limit as distance approaches zero, divided by time as it approaches zero, you get the speed of light - the ratio of two infinitesimally small numbers (the smallest unit of distance over the smallest unit of time).
Anyway that's how I explain it to myself.