The description of Fireball on D&D Beyond clearly says to choose a point within range. It makes no requirement for hitting a hard surface - it makes no requirement at all, other than picking a point.
The spellcasting section says:
To target something, you must have a clear path to it, so it can't be behind total cover. If you place an area of effect at a point that you can't see and an obstruction, such as a wall, is between you and that point, the point of origin comes into being on the near side of that obstruction.
So... You can absolutely pick a point that's just far enough away to avoid singing the caster's eyebrows, but completely envelops adjacent enemies. You could not pick a point beyond something like a wall (because that's total cover), but can otherwise start it where you please.
When playing on a grid, the DMG (p 251) says you have to pick an intersection of gridlines for your targeting point. It should not have any particular effect on placing your spell in this situation. If you could aim it to meet your goal off a grid, you should be able to do the same on a grid.
If there were any doubt about the spell landing exactly where the caster wants it, there would be a roll involved in the casting - some spells have an ranged spell attack roll, fireball does not. If your DM wishes to add additional rules to spell targeting, that's his prerogative, but he's making things more difficult than they were designed to be. The fundamental assumption is that characters are competent. If the DM wishes to make them feel less competent, he can... but I wouldn't play his game.