Looking into this, I indeed see the procs which do work are setof/return table ones, not refcursor ones. We have a few tests which are indeed marked as ignore as the refcursor support is broken in npgsql (as it gives the 'unnamed portal' error). We rely on the DbDataAdapter support (so we fill a Datatable or dataset with the proc result and the ADO.NET provider's DbDataAdapter implementation should take care of the cursor usage.
I see your point though. While having the procs as a TVF isn't going to hurt, it doesn't help if your code is using datatable/set based stored proc resultsets: the procs then aren't available to you.
Currently, using SETOF in a proc will make it show up as a stored procedure and TVF. Using Return table, will make it show up as TVF.
It's easy for us to add all functions as stored procedures and add only the record/custom type returning functions as TVFs, you can then select them for the type you want: TVF or proc.
We'll make this change in the 5.3.5 hotfix (driver change for postgresql), which we'll release later today