For lack of another term having popped up in Trek's almost 50 years and hundreds of hours, we're left with "Starfleet officer" being the generic term by default. In a case like Picard discussing officer status with an enlisted personnel, it's a matter of the context within which the term is being used.
And FWIW regarding O'Brien...in those early Season 1 appearances, he's not referred to by name. We like to think that it's Chief O'Brien, but as actors have played dual roles on Trek before and since, we can't assume that it is.
Otherwise, I'd just consider his being addressed as "Lieutenant" one time, and never having gotten his pips changed because the show didn't have an enlisted rank structure at the time, to just be apocryphal details.