The I-797 and your I-94 will normally have the same expiration date. It sounds like you showed the wrong approval when you last entered the U.S.
You need to update your I-94 before its expiration date. You can do that next time you leave the country. If you do that at a regular border crossing (e.g., Mexico or Canada, or when taking an international flight) you shouldn't have a problem - turn in your I-94 when you leave and get a new one on your return.
Although I make no promises, you can also
try going to a deferred inspection site (
a list is here [PDF]) and getting your I-94 reissued; they are most likely to do that if they believe that they made the error (i.e., you presented the current approval but they issued a date based on the old one.)