It seems like iTunes search API returns different results than the ones returned when searching on an iPhone device (also results are in different order).
Assuming I want the results to be identical to an iPhone device, how do I do that with the official search API?
Also, is there a way to filter out non-iPhone apps from the search results?
The search stack developed for the store is a different algorithm than the search stack for developer tools.
That said, understand some of the following features of the developer tool (Search API) that are helpful:
"sort=popular" is the default order that results are returned. "sort=recent" is the alternative.
"entity=software" will return apps that are available on iPhone, iPod touch and Universal apps (that work on iPad) but if you want all iOS apps you should use "entity=software,iPadSoftware"
Focus your search term on the attribute you are trying to target. If you know your search term is a song title (and not an album name or artist name) then use "attribute=songTerm"