This is a very slight improvement on the original:
Use a block cipher such as DES. Choose a secret key to be shared between the car unit and the garage unit. Upon manufacture or repair, choose a random 64 bit number and initialize a variable, called the counter, in both units to that value. Upon pressing the button on the car unit, the counter is incremented and the encrypted counter is broadcast. Upon receiving a formatted broadcast the garage unit deciphers the transmission and tests the result for being greater, but no more than 1000 greater than the garage counter. If the value is in that range then the door is opened and the deciphered value becomes the new garage counter value.