Try this (and you should put a primary key on it, especially for performance reasons)
SELECT status_change.*
, previous.timestamp AS earlier_timestampe
, TIMEDIFF(status_change.timestamp, previous.timestamp) AS time_between
FROM status_change
LEFT JOIN status_change AS previous
ON status_change.room = previous.room
AND status_change.timestamp > previous.timestamp
LEFT JOIN status_change AS inbetweener
ON status_change.room = inbetweener.room
AND inbetweener.timestamp BETWEEN previous.timestamp AND status_change.timestamp
WHERE inbetweener.room IS NULL
ORDER BY status_change.timestamp DESC;