"Let John and me go" is correct.
You are right that "I" is used for the subject and "me" for the object. Where you got tripped up is supposing that I/me here is the subject. It's not: it's the object.
This is an imperative sentence. In an imperative sentence in English, the subject is often not stated. It is assumed to be "you", that is, the person that the speaker is talking to. In this case, the person is demanding or requesting that "you" allow John and "me" to go. "you" is the assumed subject. "You" are doing the "letting go". The people you are letting go are "John and me". So "John and me" are the objects, and therefore "me" is correct.