Am I breaking something if I set an autoincrement PK to 0?
Although not usual practice, a primary key can be 0 because 0 is a valid integer. If you set auto increment on the column it will normally start from 1, however, manually changing an id on an existing row to 0 will not cause any issues. If you have any foreign keys that referenced ID 4 before you changed it to 0, then you'll need to update those as well.
Note that if you use 0 in an INSERT for a primary key, MySQL interprets that as a request to generate a new key. In those cases, you can use the following to tell MySQL to interpret 0 INSERTs as a true 0, not a PRIMARY KEY generation request.
SET SESSION sql_mode='NO_AUTO_VALUE_ON_ZERO';