An inoffensive word for "stupid"?
Solution 1:
I assume OP is really looking for a word meaning "stupid", but with positive connotations (along the lines of "cuddly" for "fat", and maybe "homely" for "ugly").
Teachers, for example, may speak of less able students. But that's just because sometimes they can't avoid referring to such pupils (and it would be unprofessional to call them "stupid").
In normal conversational contexts, any reference to someone's lack of intelligence is likely to be seen as impolite and/or hurtful, so it's probably best avoided unless you intend to be disparaging.
OP might feasibly get away with uncomplicated, (or perhaps slow, simple, naive), but generally speaking such terms will be recognised for what they are (euphemisms) - so again, best avoided.
One common approach is to "soften" the label with humour. For example, you can say someone's...
one sandwich short of a picnic (a few clowns short of a circus, etc.)
not playing with a full deck (of cards, similar construction to above)
thick as a brick (...two short planks, ...shit, etc.)
EDIT: Following OP's later comment, it's apparent he wants a friendly/affectionate term by which to address his friend, who's showing a lack of understanding in some particular context. That's not really the same thing as trying to explain to others that your friend is significantly less intelligent than the average.
I suggest suitable phrasing in OP's context would be something slightly "whimsical", such as...
"Oh, you're such a ninny / noodle / nincompoop / etc.! Anyone can see she's madly in love with you!"
Solution 2:
"silly," "goof," or "dork" all work in casual/flirtatious conversation.