You're retriggering the change event when you change the cell in the event code. Not sure what logic you want, but maybe this:
Private Sub Worksheet_Change(ByVal Target As Range)
    Application.EnableEvents = False
    With Target
        If .Column = 1 And InStr(.Value, "to be opened") > 0 Then
            .Offset(, 1).Interior.ColorIndex = 45
            .Value = .Value & Format(Now, " yyyy-mmdd hh:mm")
            .Interior.ColorIndex = xlColorIndexNone
        End If
    End With
    Application.EnableEvents = True
End Sub