Charge is not actually a quantity on the real number line; it's more of a "count" of something. Not sure what exactly. The "topological defect" model of charges in 2d is a decent analogy though, in which a charge can be e.g. a count of how many vortices there are in a field which are oriented in a certain direction (picture a bathtub with a bunch of drains, and ask, how many tornado-like vortices, if we count clockwise vortices as +1 and counterclockwise as -1, are there? The number can vary but obviously it has to be an integer because what would half a vortex even mean?)
But that model is too simple for charge, since quarks have +-1/3 or 2/3 but the result always adds up to an integer in a hadron. Maybe it's something like a type of winding number or linking number? I don't know. Whatever it is, when the "correct" explanation is found, it will be obvious why it is always an integer and why its constituents are always 1/3 or 2/3, and it will no longer seem interesting to ask why it can't be any old fraction, because that misunderstands the "type" of object that it is counting.