This makes sense, but I do not know how to do it.
Right now, the price for customers is $4/TB stored and $7/TB egress. Even if all of that money went to the nodes, the nodes would get something like $1.4 and $2.5 (because 1TB of customer data takes up 2.76TB on the nodes).
This would require large nodes with lots of egress to make even $50/month.
Another part is the fact that nodes cannot be trusted. There is no way to prove or disprove that multiple nodes are running on the same or separate array, that the node operator has backup power or a backup ISP.
Filecoin does it by having large initial requirements. It seems that there is no point in starting a filecoin node without a full rack of modern servers. I guess that’s one way to make sure that only “serious” people do it. It is not very decentralized then.
Having lots of small nodes probably is better for reliability, but it may indeed look bad (“hey, boss, I think we should use this company to store our files, the files get stored on lots of raspberries in lots of homes”).
AWS and similar have the advantage that you can run VMs on the same provider and probably pay less to access the data (or at least have it faster). There is no way to run even php on Storj (and sure, Storj is only for storage), but at the same time I am a bit struggling to figure out the use cases for it other than backups.