A cheap I2C programmer is the way.
You can’t program SPD data without some kind of I2C interface, but you don’t need a “dedicated RAM programmer.” A $5 USB I2C adapter (like a CH341A in I2C mode) or even a Raspberry Pi with the right pins will do the job.
The SPD data lives on a small EEPROM on the stick – usually an AT24C02 or similar. It’s just I2C. If you have a way to talk I2C (a Bus Pirate, an Arduino, a Pi, a cheap USB dongle), you can read and write it. The tricky part is getting the correct SPD data. You need the manufacturer’s binary blob or a known-good dump from an identical stick. Often you can find these in the community, copy from a working stick of the same specs, or reverse engineer with part numbers and JEDEC specifications.
If you don’t have any I2C tool, you’re stuck. Some motherboards can read SPD, but writing is almost never exposed in the BIOS. So either buy a cheap
