You do not need a new user just ensure the group is always www-data. You chmod the actual dir to have the setgid bit, and all new files created under it will have the www-data group.
So, to make sure if you need to place files there with your user, that it keeps the right group, run, and chmod to set the setGID of the directory.
sudo chgrp www-data /var/www
sudo chmod +g /var/www
As for the user, after creating the user (as nkts suggests) where M is for not creating the home dir, and the N option is for not creating the default group identical to the user.
sudo useradd -d /var/www/ -g www-data -M -N -s /sbin/nologin user
I would setup it to SFTP instead of FISH as it is more secure, reliable, and very flexible. You also have to chroot it to his home to make sure he has no access to the rest of the file system, and restrict it to internal-sftp. Add to /etc/ssh/sshd_config
Match User user
Note: FISH is more an archaic curiosity and a shell that was used before SFTP.
If you still want to use FISH in Ubuntu:
sudo apt-add-repository ppa:fish-shell/release-2
sudo apt-get update
sudo apt-get install fish
And then change the shell of the user
chsh -s /usr/bin/fish
We also have again to force the shell in /etc/ssh/sshd_config
Match User user
This article will also help you with FISH
The restriction to the homedir with fish should be possible, but more complicated to setup, and difficult to enforce as it would be easier if the owner of /var/www is www-data.
To setup such restriction, you would need at least to copy /usr/bin/fish to inside /var/www (which is not a good idea), and for /var/www and /usr/bin/fish to be owned by root (which also invalidates the recommendation of changing the setGID of the /var/www directory.
As mentioned previously, SFTP is a more modern and more secure way to setup a remote file-only access than FISH.