Is it possible to set up an email form (embedded) on the home page that only displays if the user is not opted in to our emails or not recognized?
If the person is not recognized, i.e. the session is not associated at all: Yes, simply use Known Visitor HTML ("If Known Visitor, Show Custom HTML" in Form Editor » Setup).
If the session is associated with a named lead, but the lead has not filled in the opt-in field: Not as easy. Since you're on a non-Marketo LP, you can't use a token to check the value of a lead field. If the field is a checkbox, you can leverage Progressive Profiling (a checkbox field will always be shown as long as it is empty) together with some JavaScript to capture this condition.
Did you purchase web personalization? If so, you should be able to do it that way by selecting the div you want to have the form appear in. You could then define the field in your database you want to use to show the form (or whichever content you want).