I'm not sure why reader app designers cannot seem to understand the problem of large margins on a small screen!
Even a margin of say 1/4" takes away 1/2" of screen width which means fewer words per line. If the screen is only 2" wide, then 1/4" margins give you only 1-1/2" of text width. They should let us decide if we want any margin or not.
As far as CSS formatting, many publishers don't use the proper formatting when specifying margins. They should use percentage or EM or nothing, but a lot of them still use pixels and other bad units. 20 pixels might seem like a small margin on a 9.7" iPad screen, but 20px margins are huge on an iPhone screen.
Now I realize that running the text all the way to the edge of the screen is problematic as it can make the first/last letter that touches the side of the screen difficult to read. But in reality all you need is a 1 pixel minimum margin to correct this problem of text at the edge of the screen.