I feel that the problem with small phones roots in software. Obviously you would need to run smaller resolution. My sweet spot was iPhone 4S. It has 3.5" display with 640x960 resolution. If you would try to run modern Android with this resolution, you would hit multiple obstacles, from popular apps to popular websites scaling badly.