I wouldn’t rely on column formatting in the sheet. You have to remember that the sheet is just a database and it’s only intended purpose is to hold data. If you want a number to display as currency or with any particular formatting for numbers, I would set up a new column and use and arrayformula to format the value how you want it to look. You would then display that new column in your app. If you need to edit the value, you would still edit the original column.
Purely guessing here, but the reason the Currency format may be working and the Number format isn’t, may be because the currency is getting converted to a String instead of an Number, whereas the Number format is still stored as a number behind the scenes. I strictly stay away from formatting a column within the sheet. I instead use formulas to get the results I want.